:root{--tk-kraft: #dcc39d;--tk-linen: #f5eee1;--tk-paper: #fdf8ee;--tk-ink: #3a2c1f;--tk-muted: #5f4b38;--tk-brown: #5a3d22;--tk-rose: #8f5240;--tk-line: rgba(58, 44, 31, .16);--tk-jute: #c9a26b;--tk-jute-dark: #6f4c2c;--tk-sage: #8ea381;--tk-sage-deep: #4f6a47;--tk-script: "Pinyon Script", "Snell Roundhand", cursive;--tk-serif: "EB Garamond", Georgia, "Times New Roman", serif;--tk-sans: "Josefin Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--tk-safe-t: env(safe-area-inset-top, 0px);--tk-safe-b: env(safe-area-inset-bottom, 0px);--tk-gutter: max(16px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));--tk-stage-h: 100vh}@supports (height: 100svh){:root{--tk-stage-h: 100svh}}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body.tk{margin:0;background:var(--tk-linen);color:var(--tk-ink);font-family:var(--tk-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}.tk *,.tk *:before,.tk *:after{box-sizing:border-box}.tk [hidden]{display:none!important}.tk-defs{position:absolute;width:0;height:0;overflow:hidden}.tk-skip{position:absolute;left:12px;top:-60px;z-index:50;padding:10px 14px;border-radius:8px;background:var(--tk-ink);color:var(--tk-paper);font-weight:500;text-decoration:none}.tk-skip:focus{top:calc(12px + var(--tk-safe-t))}.tk-eyebrow{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--tk-sage-deep)}.tk-h2{margin:0 0 16px;font-family:var(--tk-serif);font-weight:500;font-size:clamp(34px,8.6vw,58px);line-height:1.05;letter-spacing:-.01em}.tk-h2 em{font-style:italic;font-weight:400;color:var(--tk-rose)}.tk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:2px 22px 0;border:1px solid rgba(58,44,31,.38);border-radius:999px;background:transparent;color:var(--tk-ink);font:500 14px/1 var(--tk-sans);letter-spacing:.08em;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.tk-btn-solid{background:var(--tk-ink);border-color:var(--tk-ink);color:var(--tk-paper)}.tk-btn-ghost{background:#fdf8eeb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@media(hover:hover){.tk-btn:hover{border-color:var(--tk-ink);background:#3a2c1f0f}.tk-btn-solid:hover{background:var(--tk-sage-deep);border-color:var(--tk-sage-deep)}.tk-btn-ghost:hover{background:var(--tk-paper)}}.tk-btn:active{transform:scale(.98)}.tk-btn:focus-visible,.tk-replay:focus-visible,.tk-down:focus-visible,.tk-tag:focus-visible{outline:2px solid var(--tk-sage-deep);outline-offset:3px}.tk-btn:disabled{opacity:.45;cursor:not-allowed}.tk-stage{position:relative;min-height:var(--tk-stage-h);display:grid;place-items:center;padding:calc(64px + var(--tk-safe-t)) var(--tk-gutter) calc(68px + var(--tk-safe-b));overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;background:var(--tk-kraft)}.tk-js .tk-stage{min-height:max(var(--tk-stage-h),600px)}.tk-backdrop,.tk-backdrop>span{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tk-paper{background:radial-gradient(ellipse 85% 50% at 50% 0%,rgba(255,238,200,.7),transparent 72%),radial-gradient(ellipse 120% 70% at 50% 115%,rgba(104,72,38,.3),transparent 62%),radial-gradient(ellipse 60% 120% at 0% 50%,rgba(104,72,38,.14),transparent 60%),radial-gradient(ellipse 60% 120% at 100% 50%,rgba(104,72,38,.14),transparent 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .22 0 0 0 0 .12 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E"),linear-gradient(180deg,#e3cca8,#d9bf98 58%,#cfb28a)}.tk-bokeh i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);border-radius:50%;background:radial-gradient(circle,#ffecba8c 0,#ffe2a033 42%,#ffe2a000 70%);animation:tk-float var(--t, 10s) ease-in-out var(--d, 0s) infinite alternate}@keyframes tk-float{0%{transform:translateZ(0) scale(1);opacity:.65}50%{opacity:1}to{transform:translate3d(14px,-22px,0) scale(1.12);opacity:.55}}.tk-lights{position:absolute;left:0;top:var(--tk-safe-t);width:100%;height:130px;overflow:visible;pointer-events:none}.tk-lights-wire{fill:none;stroke:#4f4a33;stroke-opacity:.7;stroke-width:1.3}.tk-bulb-glow{transform-box:fill-box;transform-origin:center;animation:tk-twinkle var(--tw, 3s) ease-in-out var(--dl, 0s) infinite;transition:opacity .6s}.tk-bulb-core{fill:#fff3cf}.tk-bulb-cap{fill:#4f4a33;fill-opacity:.8}.tk-tied .tk-bulb-glow{animation-duration:1.2s}@keyframes tk-twinkle{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}.tk-sprig{position:absolute;width:clamp(96px,26vw,170px);height:auto;overflow:visible}.tk-sprig-bl{left:-26px;bottom:-34px;transform:rotate(32deg);transform-origin:50% 100%;animation:tk-sway 7s ease-in-out infinite alternate}.tk-sprig-br{right:-26px;bottom:-34px;transform:scaleX(-1) rotate(32deg);transform-origin:50% 100%;animation:tk-sway-r 8s ease-in-out infinite alternate}@keyframes tk-sway{0%{transform:rotate(28deg)}to{transform:rotate(36deg)}}@keyframes tk-sway-r{0%{transform:scaleX(-1) rotate(29deg)}to{transform:scaleX(-1) rotate(36deg)}}.tk-top{position:absolute;z-index:9;top:calc(18px + var(--tk-safe-t));left:var(--tk-gutter);right:var(--tk-gutter);display:flex;justify-content:center;font-size:10.5px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--tk-brown);text-shadow:0 0 6px #e3cca8,0 0 2px #e3cca8;pointer-events:none}.tk-scene{position:absolute;left:0;top:0;right:0;height:100%;max-height:var(--tk-stage-h)}.tk-js .tk-scene{max-height:max(var(--tk-stage-h),600px)}.tk-play{display:none}.tk-js .tk-play{display:block}.tk-js.tk-revealed:not(.tk-tying) .tk-play{display:none}.tk-intro{position:absolute;z-index:3;top:calc(56px + var(--tk-safe-t));left:var(--tk-gutter);right:var(--tk-gutter);text-align:center;pointer-events:none}.tk-intro .tk-eyebrow{color:var(--tk-brown)}.tk-headline{margin:0;font-family:var(--tk-serif);font-weight:500;font-size:clamp(42px,11.5vw,80px);line-height:1;letter-spacing:-.015em}.tk-headline em{font-family:var(--tk-script);font-style:normal;font-weight:400;font-size:1.22em;letter-spacing:0;color:var(--tk-rose)}.tk-sub{margin:12px auto 0;max-width:32ch;min-height:3.1em;font-size:15px;color:var(--tk-muted);transition:opacity .3s}.tk-peg{position:absolute;z-index:1;left:0;top:0;width:48px;height:48px;margin:-24px 0 0 -24px;filter:drop-shadow(0 3px 3px rgba(70,45,20,.3))}.tk-peg svg{display:block;width:100%;height:100%;overflow:visible}.tk-ropes{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;pointer-events:none}.tk-tag{--tk-hole: 13px;position:absolute;z-index:5;left:0;top:0;width:76px;height:104px;padding:0;border:0;background:none;color:var(--tk-ink);font:inherit;transform-origin:50% var(--tk-hole);perspective:500px;cursor:grab;touch-action:none;will-change:transform;filter:drop-shadow(0 7px 7px rgba(70,45,20,.28));transition:filter .25s;animation:tk-tag-in .6s ease-out backwards}.tk-tag:before{content:"";position:absolute;top:-20px;right:-18px;bottom:-22px;left:-18px}@media(min-width:720px){.tk-tag{--tk-hole: 15px;width:88px;height:120px}}@keyframes tk-tag-in{0%{opacity:0}}.tk-tag.tk-held{cursor:grabbing;filter:drop-shadow(0 14px 12px rgba(70,45,20,.3))}.tk-near .tk-tag{filter:drop-shadow(0 0 2px rgba(255,236,190,.9)) drop-shadow(0 0 14px rgba(255,210,120,.95))}.tk-tag:focus-visible{outline-offset:6px;border-radius:6px}.tk-tag-flip{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.34,1.4,.5,1)}.tk-held .tk-tag-flip{transform:scale(1.06);transition-duration:.25s}.tk-flipped .tk-tag-flip{transform:rotateY(180deg)}.tk-tag-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:22px 6px 8px;-webkit-backface-visibility:hidden;backface-visibility:hidden;clip-path:polygon(24% 0,76% 0,100% 15%,100% 100%,0 100%,0 15%);background:repeating-linear-gradient(0deg,rgba(120,90,50,.04) 0 1px,transparent 1px 3px),linear-gradient(180deg,#fffaf0,#f2e6cf);text-align:center}.tk-tag-back{transform:rotateY(180deg);background:repeating-linear-gradient(0deg,rgba(120,90,50,.04) 0 1px,transparent 1px 3px),linear-gradient(180deg,#f6ead2,#e7d3ae)}.tk-tag-hole{position:absolute;left:50%;top:var(--tk-hole);width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;background:#cdb08a;box-shadow:0 0 0 2px #b8955f,0 0 0 3px #5a3d2259,inset 0 1px 2px #462d1480}.tk-tag-name{display:block;max-width:100%;font-family:var(--tk-script);font-size:var(--tk-name-size, 26px);line-height:1.15;white-space:nowrap;color:var(--tk-ink)}.tk-tag-rule{display:block;width:46%;height:0;border-top:1px dashed rgba(90,61,34,.45)}.tk-tag-amp{font-family:var(--tk-script);font-size:46px;line-height:.9;color:var(--tk-rose)}.tk-tag-date{font-family:var(--tk-serif);font-style:italic;font-size:21px;line-height:1.1;color:var(--tk-ink)}.tk-tag-small{font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--tk-muted)}@media(min-width:720px){.tk-tag-amp{font-size:54px}.tk-tag-date{font-size:24px}}.tk-knot{position:absolute;z-index:7;left:0;top:0;width:128px;aspect-ratio:128 / 100;visibility:hidden;pointer-events:none;filter:drop-shadow(0 5px 5px rgba(70,45,20,.28))}.tk-knot svg{display:block;width:100%;height:100%;overflow:visible}.tk-fx{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.tk-p{position:absolute;left:0;top:0;width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);will-change:transform,opacity}.tk-p svg{display:block;width:100%;height:100%;overflow:visible}.tk-p-leaf{height:calc(var(--s) * 2);margin-top:calc(var(--s) * -1)}.tk-p-light{border-radius:50%;background:radial-gradient(circle,#fffbe8 0,#fffbe8 18%,#ffdc8cd9 30%,#ffd27800 70%)}.tk-p-ring{border-radius:50%;border:2px solid rgba(255,244,210,.95);box-shadow:0 0 18px #ffd682cc,inset 0 0 12px #ffd68299}.tk-hand{position:absolute;z-index:8;left:0;top:0;width:40px;height:48px;margin:-2px 0 0 -17px;pointer-events:none;visibility:hidden;filter:drop-shadow(0 6px 6px rgba(58,44,31,.3))}.tk-hand svg{display:block;width:100%;height:100%}.tk-hand-dot{position:absolute;left:17px;top:2px;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;background:radial-gradient(circle,#fffaf0d9,#fffaf000 70%);opacity:0;transform:scale(.4);transition:opacity .2s,transform .3s}.tk-hand.tk-pressing .tk-hand-dot{opacity:1;transform:scale(1)}.tk-escape{position:absolute;z-index:8;left:0;right:0;bottom:calc(22px + var(--tk-safe-b));text-align:center;transition:opacity .3s}.tk-tying .tk-escape{opacity:0;pointer-events:none}.tk-nudge .tk-escape .tk-btn{border-color:var(--tk-ink);background:var(--tk-paper);box-shadow:0 8px 20px -10px #3a2c1f80}.tk-card-wrap{position:relative;z-index:4;width:min(100%,420px)}.tk-js .tk-card-wrap{visibility:hidden;opacity:0}.tk-js.tk-revealed .tk-card-wrap{visibility:visible;opacity:1}.tk-card-sprig{position:absolute;z-index:0;width:92px;height:auto;overflow:visible;pointer-events:none}.tk-card-sprig-a{left:-30px;top:-38px;transform:rotate(-38deg)}.tk-card-sprig-b{right:-30px;bottom:-40px;transform:rotate(142deg)}.tk-card{position:relative;z-index:1;padding:26px 24px 22px;background:repeating-linear-gradient(0deg,rgba(120,90,50,.035) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(120,90,50,.03) 0 1px,transparent 1px 3px),var(--tk-paper);border-radius:14px;box-shadow:0 30px 60px -28px #462d1480,0 2px #7a55322e;text-align:center;user-select:text;-webkit-user-select:text}.tk-card:before{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;border:1.5px dashed rgba(122,85,50,.32);border-radius:9px;pointer-events:none}.tk-card-emblem{display:block;width:96px;height:auto;margin:0 auto 4px;overflow:visible;filter:drop-shadow(0 4px 4px rgba(70,45,20,.22))}.tk-card-tied{margin:0 auto 10px;max-width:26ch;font-family:var(--tk-serif);font-style:italic;font-size:17px;line-height:1.3;color:var(--tk-sage-deep)}.tk-card-dear{margin:0 0 2px;font-family:var(--tk-serif);font-size:19px;color:var(--tk-ink)}.tk-card-lead{margin:0;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--tk-muted)}.tk-card-title{margin:4px 0;font-family:var(--tk-script);font-weight:400;font-size:clamp(42px,12vw,60px);line-height:1.15;outline:none}.tk-card-title em{font-style:normal;font-size:.8em;color:var(--tk-rose)}.tk-card-line{margin:0 auto 16px;max-width:28ch;font-family:var(--tk-serif);font-size:19px;line-height:1.35}.tk-card-facts{margin:0 0 18px;padding:14px 0 0;border-top:1px solid var(--tk-line);display:grid;gap:8px}.tk-card-facts div{display:grid;gap:1px}.tk-card-facts dt{font-size:10px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--tk-sage-deep)}.tk-card-facts dd{margin:0;font-size:15px}.tk-card-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.tk-card-actions .tk-btn{flex:1 1 130px}.tk-replay{margin-top:12px;padding:6px 10px;border:0;background:none;color:var(--tk-muted);font:400 13px/1 var(--tk-sans);letter-spacing:.06em;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.tk-down{position:absolute;z-index:6;left:50%;bottom:calc(20px + var(--tk-safe-b));transform:translate(-50%);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--tk-brown);text-decoration:none;white-space:nowrap}.tk-js .tk-down{display:none}.tk-js.tk-revealed .tk-down{display:block}.tk-down i{font-style:normal}.tk-wrap{width:min(100% - 2 * var(--tk-gutter),880px);margin:0 auto}.tk-details{padding:84px 0 56px;outline:none}.tk-lede{max-width:58ch;margin:0 0 32px;font-size:17px;color:var(--tk-muted)}.tk-facts{margin:0 0 32px;display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));border-top:1px solid var(--tk-line)}.tk-facts div{padding:18px 0;border-bottom:1px solid var(--tk-line)}.tk-facts dt{margin-bottom:4px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--tk-sage-deep)}.tk-facts dd{margin:0;display:grid;gap:2px}.tk-facts b{font-family:var(--tk-serif);font-weight:500;font-size:23px;line-height:1.2}.tk-facts span{font-size:14px;color:var(--tk-muted)}@media(min-width:560px){.tk-facts{column-gap:32px}}.tk-actions{display:flex;flex-wrap:wrap;gap:12px}.tk-rsvp{padding:40px 0 96px}.tk-rsvp-card{position:relative;max-width:520px;margin:0 auto;padding:34px 24px 28px;background:repeating-linear-gradient(0deg,rgba(120,90,50,.035) 0 1px,transparent 1px 3px),var(--tk-paper);border-radius:14px;box-shadow:0 30px 60px -32px #462d1466;text-align:center}.tk-rsvp-card:before{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;border:1.5px dashed rgba(122,85,50,.3);border-radius:9px;pointer-events:none}.tk-form{position:relative;display:grid;gap:10px;text-align:left;margin-top:8px}.tk-form label{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--tk-muted)}.tk-form input{width:100%;min-height:50px;padding:0 16px;border:1px solid rgba(58,44,31,.28);border-radius:12px;background:#fff;color:var(--tk-ink);font:400 16px var(--tk-sans)}.tk-form input:focus{outline:2px solid var(--tk-sage);outline-offset:1px;border-color:transparent}.tk-answers{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.tk-answers .tk-btn{flex:1 1 180px}.tk #status{min-height:1.5em;margin:6px 0 0;font-size:15px;color:var(--tk-sage-deep);text-align:center}.tk-foot{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;padding:26px var(--tk-gutter) calc(26px + var(--tk-safe-b));border-top:1px solid var(--tk-line);font-size:13px;color:var(--tk-muted)}.tk-foot nav{display:flex;flex-wrap:wrap;gap:8px 18px}.tk-foot a{color:inherit}.tk-js.tk-revealed .tk-top{opacity:0;transition:opacity .4s}@media(prefers-reduced-motion:reduce){.tk-bokeh i,.tk-bulb-glow,.tk-sprig-bl,.tk-sprig-br,.tk-tag{animation:none}.tk-tag-flip{transition:none}}
