:root{--cloth:#4a1620;--cloth-deep:#36101a;--gilt:#d6b36d;--on-cloth:#f1e4d2;--leaf:#fcfcfa;--leaf-tint:#f2f1ec;--rule:#bccfe2;--rule-strong:#6d8cb0;--ink:#1b2a4a;--ink-hover:#2c4170;--ink-2:#4a5672;--wash:#e4edf8;--red:#ad231b;--closed:repeating-linear-gradient(135deg,transparent 0 7px,rgb(27 42 74/0.07) 7px 8px);--print:var(--font-print),"Helvetica Neue",Arial,sans-serif;--hand:var(--font-hand),"Bradley Hand","Segoe Print",cursive;--t-xs:0.8125rem;--t-s:0.9375rem;--t-m:1.0625rem;--t-l:1.3125rem;--t-title:1.75rem;--t-xl:clamp(1.9rem,1.2rem + 2.2vw,2.75rem);--t-display:clamp(2.25rem,1.4rem + 4vw,4rem);--t-hand-s:1.5rem;--t-hand:1.875rem}*,:after,:before{box-sizing:border-box}html{caret-color:var(--ink);accent-color:var(--ink);scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--cloth);color:var(--ink);font-family:var(--print);font-size:var(--t-m);line-height:1.5;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}::selection{background:#c7d7ec;color:var(--ink)}h1,h2,h3{margin:0;line-height:1.15;text-wrap:balance}p{margin:.5rem 0}a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:.2em;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong)}a:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.hand{font-family:var(--hand);font-weight:400;line-height:1.05}.unavailable{color:var(--red)}.aside{font-size:var(--t-s)}.aside,.empty{color:var(--ink-2)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bar{max-width:80rem;margin:0 auto;padding:1rem 1.5rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1.5rem;color:var(--on-cloth)}.stamped{font-family:var(--print);font-weight:700;font-size:var(--t-l);letter-spacing:-.01em;color:var(--gilt)}.bar,.cover,.desk{position:relative}.place{margin:0;font-size:var(--t-s)}.bar nav{margin-left:auto;display:flex;align-items:center;gap:.25rem 1.25rem}.bar nav .link,.bar nav a{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--on-cloth);font-size:var(--t-s);font-weight:600;-webkit-text-decoration-color:rgb(241 228 210/.45);text-decoration-color:rgb(241 228 210/.45)}.bar nav form{margin:0}button.link{background:none;border:0;padding:0;font:inherit;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.desk{max-width:80rem;margin:0 auto 4rem;padding:0 1.5rem}.book{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;border-radius:4px;box-shadow:0 30px 60px -24px rgb(0 0 0/.65),0 2px 6px rgb(0 0 0/.3)}.leaf{position:relative;background:var(--leaf);padding:1.75rem 2.5rem 3rem}.verso{border-radius:4px 0 0 4px;box-shadow:inset -22px 0 22px -22px rgb(27 42 74/.35)}.recto{border-radius:0 4px 4px 0;box-shadow:inset 22px 0 22px -22px rgb(27 42 74/.35)}#night{scroll-margin-top:.5rem}.recto-inner{position:-webkit-sticky;position:sticky;top:1rem}.back{display:none}.mine-line{margin:0 0 1.25rem;padding:.65rem .9rem;background:var(--wash);border-radius:3px}.mine-line a{font-weight:600}.guests,.register,.seats{width:100%;border-collapse:collapse}.guests thead th,.register thead th,.seats thead th{padding:0 .5rem .45rem 0;border-bottom:2px solid var(--ink);color:var(--ink-2);font-size:var(--t-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-align:left}.num{text-align:right;white-space:nowrap}.register thead th.num,.seats thead th.num{text-align:right;padding-right:0}.register .year th{padding:1.5rem 0 .4rem;border-bottom:1px solid var(--ink);font-size:var(--t-l);font-weight:700;text-align:left}.register tbody tr:not(.year){position:relative}.register td{height:3rem;padding:.45rem .75rem .45rem 0;border-bottom:1px solid var(--rule);vertical-align:middle;transition:background .12s}.register td:last-child{padding-right:0}.register .date{width:9rem;white-space:nowrap}.register .date a{font-weight:600;text-decoration:none}.register .date a:after{content:"";position:absolute;inset:0}.register .date a:focus-visible{outline:none}.register .date a:focus-visible:after{outline:2px solid var(--ink);outline-offset:-2px}.when{color:var(--ink-2);font-size:var(--t-s);font-weight:400}.register .night{font-size:var(--t-hand-s)}.note-under{display:none}.register caption,.seats caption{caption-side:top;padding-bottom:.5rem;color:var(--ink-2);font-size:var(--t-s);text-align:left}.register tbody tr:not(.year):hover td{background:var(--leaf-tint)}.register tr[aria-current] .date a{font-weight:800}.register tr[aria-current] td{background:var(--leaf-tint)}.register tr.yours td{background:var(--wash)}.register tr.off td{background-image:var(--closed)}.register tr.off .date a{color:var(--ink-2);-webkit-text-decoration:line-through 2px var(--red);text-decoration:line-through 2px var(--red)}.tally{align-items:center;gap:.6rem}.tally,.ticks{display:inline-flex}.ticks{gap:2px}.ticks i{display:block;width:5px;height:.9rem;border:1.5px solid var(--rule-strong);border-radius:1px}.ticks i.on{background:var(--ink);border-color:var(--ink)}.tally-word{min-width:4.25rem;font-size:var(--t-s);font-weight:600;text-align:right}.check{flex:none;vertical-align:middle;color:var(--ink)}.register .check{margin-right:.5rem}.night-head h2{font-size:var(--t-xl);font-weight:700;letter-spacing:-.02em;line-height:1.05}.night-meta{margin:.5rem 0 0;color:var(--ink-2)}.host-note{margin:.6rem 0 0;font-size:var(--t-hand);color:var(--ink)}.night.off{margin:-1rem;padding:1rem;background-image:var(--closed);border-radius:3px}.night.off .night-head h2{-webkit-text-decoration:line-through 3px var(--red);text-decoration:line-through 3px var(--red)}.night .closed{margin-top:2.5rem}.seats{margin-top:1.25rem;table-layout:fixed}.seats .n{width:2.25rem}.seats .num{width:8.5rem}.seats tbody td{height:3rem;padding:0 .5rem .3rem 0;border-bottom:1px solid var(--rule);vertical-align:bottom}.seats tbody td:last-child{padding-right:0}.seats td.n,.seats th.n{border-right:1px solid var(--rule)}.seats td.num,.seats th.num{border-left:1px solid var(--rule)}.seats td.n{color:var(--ink-2);font-size:var(--t-xs);padding-bottom:.55rem}.seats td.num{font-weight:600;padding-bottom:.5rem}.seats tbody td:nth-child(2),.seats thead th:nth-child(2){padding-left:.75rem}.guests .name,.seats .name{font-size:var(--t-hand);color:var(--ink)}.plus-one{display:inline-block;color:var(--ink-2);font-weight:600}.guest-name,.plus-one{padding-left:.9rem}.seats tr.yours td{background:var(--wash)}.seats tr.writing td{position:relative;border-bottom-color:var(--rule-strong);transition:border-color .15s,box-shadow .15s}.seats tr.writing:focus-within td{border-bottom-color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink)}.seats tr.writing td.num{vertical-align:middle;padding-bottom:0}.seats .check{margin-left:.5rem;vertical-align:baseline}.at-max{margin:.4rem 0 0;text-align:right}.on-line{white-space:nowrap;position:absolute;bottom:.75rem;margin:0;color:var(--ink-2);line-height:1;pointer-events:none;transition:opacity .15s;font-size:var(--t-s);font-weight:600}.seats tr.writing:has(input:not(:placeholder-shown)) .on-line{opacity:0}.seats tr.guest td:nth-child(2){padding-left:1.65rem}.seats tr.writing input{width:100%;min-height:0;height:2.1rem;padding:0;border:0;background:transparent;color:var(--ink);font-family:var(--hand);font-size:var(--t-hand);outline:none}.seats .btn.remove{gap:.3rem;min-height:2.5rem;color:var(--ink-2);font-size:var(--t-s);text-decoration:none}.seats .btn.remove:hover{color:var(--ink)}.seats tr.bring td,.seats tr.guest td.num{vertical-align:middle;padding-bottom:0}.seats tr.bring td:nth-child(2){padding-left:1.3rem}.seats tfoot td{padding:.6rem 0 0;border-top:3px double var(--ink);text-align:right}.seats tfoot span{margin-right:1rem;color:var(--ink-2)}.seats tfoot strong{font-size:var(--t-l)}@keyframes ink-in{0%{-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0)}to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}@keyframes tick{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.just-booked tr.yours .name{animation:ink-in .9s cubic-bezier(.16,1,.3,1) .15s both}.just-booked tr.yours .check path{stroke-dasharray:1;animation:tick .45s cubic-bezier(.16,1,.3,1) .95s both}label{display:block;margin-bottom:.35rem;color:var(--ink-2);font-size:var(--t-s);font-weight:600}input,select,textarea{width:100%;min-height:2.75rem;padding:.5rem .7rem;border:1px solid #7486a4;border-radius:3px;background:#fff;color:var(--ink);font:inherit;font-size:var(--t-m)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:1px}::placeholder{color:#5c6984;opacity:1}.bookplate form,.take-seat{margin-top:1rem}.bookplate input,.take-seat input{padding:.45rem 0;border:0;border-bottom:2px solid var(--rule-strong);border-radius:0;background:transparent}.bookplate input:focus-visible,.take-seat input:focus-visible{outline:none;border-bottom-color:var(--ink)}.error{margin:1rem 0 0;padding:.6rem .85rem;background:var(--leaf-tint);border-radius:3px;color:var(--ink);font-weight:600}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:.9rem}.actions .aside{margin:0;max-width:22rem}.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-height:2.875rem;padding:0 1.35rem;border:1.5px solid var(--ink);border-radius:3px;background:var(--ink);color:var(--leaf);font:inherit;font-size:var(--t-m);font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}.btn:hover{background:var(--ink-hover);border-color:var(--ink-hover)}.btn:active{translate:0 1px}.btn:disabled{opacity:.55;cursor:progress}.btn.soft{background:var(--wash);border-color:var(--wash);color:var(--ink)}.btn.soft:hover{background:#d3e2f4;border-color:#d3e2f4}.btn.text{min-height:2.75rem;padding:0;color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:.2em}.btn.text,.btn.text:hover{border-color:transparent;background:none}.btn.text:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.btn.small{min-height:2.5rem;padding:0 .85rem 0 .65rem;gap:.4rem;font-size:var(--t-s)}.btn svg{flex:none}.button-label{margin:1.25rem 0 0;color:var(--ink-2);font-size:var(--t-s);font-weight:600}.button-label+.buttons{margin-top:.5rem}.buttons{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.copy-fallback{flex-basis:100%;font-size:var(--t-s)}.entry{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--ink)}.entry h3{font-size:var(--t-l);font-weight:700}.where{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;margin:1rem 0 0}.where .hand{font-size:var(--t-hand)}.where a{font-size:var(--t-s);font-weight:600}.next-open{margin-top:1.5rem}.next-open a{font-weight:600}.give-back{margin-top:1.75rem}.confirm{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.confirm .question{flex-basis:100%;font-weight:600}.subscribe{margin-top:2.75rem;padding-top:1.5rem;border-top:1px solid var(--ink)}.subscribe h2{font-size:var(--t-l);font-weight:700}.subscribe p{color:var(--ink-2)}.leaf.single{max-width:46rem;margin:0 auto;border-radius:4px;box-shadow:0 30px 60px -24px rgb(0 0 0/.65),0 2px 6px rgb(0 0 0/.3)}.page-title{margin-bottom:1rem;font-size:var(--t-title);font-weight:700;letter-spacing:-.01em}.cover{min-height:100vh;display:grid;place-content:center;justify-items:center;grid-gap:2.25rem;gap:2.25rem;padding:4rem 1rem}.cover .stamped{font-size:var(--t-display);letter-spacing:-.02em;text-align:center}.bookplate{width:min(27rem,100%);padding:2.25rem 2.25rem 2.5rem;background:var(--leaf);border-radius:3px;box-shadow:inset 0 0 0 7px var(--leaf),inset 0 0 0 8px var(--rule-strong),0 22px 44px -14px rgb(0 0 0/.6)}.bookplate .hand{margin:0 0 .5rem;font-size:var(--t-hand)}.bookplate .btn{width:100%;margin-top:1.5rem}.host{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(19rem,1fr);grid-gap:1.25rem;gap:1.25rem;align-items:start}.host .leaf,.host-side .leaf{border-radius:4px;box-shadow:0 24px 48px -24px rgb(0 0 0/.6),0 2px 5px rgb(0 0 0/.25)}.host-side{display:grid;grid-gap:1.25rem;gap:1.25rem}.host-side .leaf{padding:1.75rem 1.75rem 2rem}.host-night{padding:1.1rem 0 1.25rem;border-top:1px solid var(--rule)}.host-night header{display:grid;grid-template-columns:1fr auto;grid-gap:.25rem 1rem;gap:.25rem 1rem;align-items:baseline}.host-night h3{font-size:var(--t-l);font-weight:700}.host-night .host-note{grid-column:1;margin:0;font-size:var(--t-hand-s)}.host-night .tally{grid-column:2;grid-row:1}.host-night.off{background-image:var(--closed)}.host-night.off h3{-webkit-text-decoration:line-through 2px var(--red);text-decoration:line-through 2px var(--red)}.host-night>.aside{margin:.5rem 0 0}.guests{margin-top:.75rem;table-layout:fixed}.guests th:first-child{width:38%}.guests th:nth-child(2){width:5.5rem}.guests th:nth-child(4){width:8.5rem}.guests td+td,.guests th+th{padding-left:.75rem}.guests td{padding:.35rem .75rem .35rem 0;border-bottom:1px solid var(--rule);vertical-align:middle}.guests .name,.guests td.hand{font-size:var(--t-hand-s);overflow-wrap:anywhere}.guests .num{padding-right:1.5rem}.guests .act{width:1%;padding-right:0;text-align:right}.guests .act .confirm{justify-content:flex-end}.guests .act .btn,.guests .act .confirm .question{font-size:var(--t-s)}.guests .act .btn{min-height:2.5rem}.guests .act .btn:not(.text){padding:0 .9rem}.night-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem 1.5rem;margin-top:.9rem}.night-actions form{margin:0}details.edit>summary{display:inline-flex;align-items:center;min-height:2.75rem;padding:0;font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:.2em;cursor:pointer;list-style:none}details.edit>summary::-webkit-details-marker{display:none}details.edit>summary:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}details.edit[open]{flex-basis:100%}details.edit[open]>summary{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}details.edit .fields{margin-top:1rem}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));grid-gap:1rem 1.25rem;gap:1rem 1.25rem;align-items:end}.fields>.wide{grid-column:1/-1}.fields>.btn{justify-self:start}.fields .fields{gap:1rem 1.25rem}.schedule{padding:1.25rem 0;border-top:1px solid var(--rule)}.schedule:first-of-type{border-top:0;padding-top:0}.schedule h3{font-size:var(--t-l);font-weight:700}.schedule .fields,.schedule>form+form{margin-top:.75rem}.feed-url{margin-top:.5rem;background:var(--leaf-tint);color:var(--ink-2);font-size:var(--t-s)}@media (max-width:900px){.book{display:flex;flex-direction:column;gap:1rem;box-shadow:none}.book .leaf{border-radius:4px;box-shadow:0 24px 48px -24px rgb(0 0 0/.6),0 2px 5px rgb(0 0 0/.25)}.leaf{padding:1.75rem 1.25rem 2.25rem}.recto-inner{position:static}.back{display:inline-flex;align-items:center;min-height:2.75rem;margin:-.75rem 0 .5rem;font-size:var(--t-s);font-weight:600}.register td.night,.register thead th:nth-child(2){display:none}.register .date{width:auto;white-space:normal}.note-under{margin-top:.15rem;font-size:var(--t-hand-s)}.guests,.guests tbody,.note-under{display:block}.guests thead{display:none}.guests tr{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:.15rem .75rem;gap:.15rem .75rem;padding:.5rem 0;border-bottom:1px solid var(--rule)}.guests td,.guests td+td{padding:0;border:0}.guests td:nth-child(3){grid-column:1/-1;grid-row:2}.guests td.num:before{content:"Covers ";color:var(--ink-2);font-size:var(--t-xs);font-weight:600}.guests .act{width:auto}.guests .act .confirm{max-width:12rem}.host-night header{grid-template-columns:1fr}.host-night .tally{grid-column:1;grid-row:auto}.ticks i{width:4px}.tally-word{min-width:3.5rem}.seats .num{width:7.25rem}.seats .n{width:1.75rem}.seats tr.guest td:nth-child(2){padding-left:1.25rem}.seats tr.guest .on-line{font-size:var(--t-xs)}.seats tr.bring td:nth-child(2){padding-left:1rem}.host{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}