html[data-design=sketch]{--sk-bg:var(--scrap-bg,#F5F2F0);--sk-paper:var(--scrap-paper,#FFFFFF);--sk-red:var(--pink,#9E0E00);--sk-red-deep:var(--pink-soft,#820E03);--sk-red-bg:var(--pink-bg,#F3E3E0);--sk-ink:var(--ink-1,#141311);--sk-ink-2:var(--ink-2,#3A3631);--sk-muted:var(--ink-3,#7A726B);--sk-line:var(--line-strong,rgba(20,19,17,0.25));--sk-font-display:var(--font-marker),"Caveat Brush",cursive;--sk-font-hand:var(--font-hand),"Patrick Hand",cursive}.sk-mark{color:var(--sk-red)}.sk-page,html[data-design=sketch] body{background:var(--sk-bg);color:var(--sk-ink);font-family:var(--sk-font-hand)}.sk-page{position:relative;max-width:480px;margin:0 auto;overflow-x:clip}.sk-section{position:relative;padding:clamp(64px,16vw,96px) 24px;text-align:center}.sk-narrow{padding-left:32px;padding-right:32px}.sk-display{font-family:var(--sk-font-display);color:var(--sk-red);text-transform:uppercase;line-height:1.02;letter-spacing:.08em;margin:0}.sk-display-xl{font-size:clamp(3.6rem,18vw,5rem);letter-spacing:.14em}.sk-display-md{font-size:clamp(2.6rem,13vw,3.6rem)}.sk-display-sm{font-size:clamp(1.8rem,8.5vw,2.4rem);text-align:left}.sk-names{font-family:var(--sk-font-hand);color:var(--sk-red);font-size:clamp(1.6rem,7vw,2rem);letter-spacing:.18em;margin:0 0 6px}.sk-names-lg{font-size:clamp(2rem,9vw,2.6rem)}.sk-plus{font-family:var(--sk-font-display)}.sk-title-wrap{margin-bottom:28px}.sk-title{font-family:var(--sk-font-hand);color:var(--sk-red);font-size:clamp(1.9rem,8vw,2.3rem);letter-spacing:.12em;line-height:1.15;margin:0}.sk-title-sm{font-size:1.45rem;margin-bottom:10px}.sk-underline{display:block;width:140px;height:14px;margin:2px auto 12px;color:var(--sk-red)}.sk-body{font-size:1.08rem;line-height:1.6;margin:0 0 12px}.sk-body,.sk-small{color:var(--sk-ink-2)}.sk-small{font-size:.95rem;margin:0}.sk-muted{color:var(--sk-muted)}.sk-red{color:var(--sk-red)}.sk-eyebrow{font-size:1rem;letter-spacing:.3em;text-transform:uppercase;color:var(--sk-muted);margin:0 0 10px}.sk-link{color:var(--sk-red);font-size:1rem;text-decoration:none;border-bottom:1px dashed}.sk-arabic{font-family:serif;font-size:1.45rem;line-height:2;color:var(--sk-ink);margin:0 0 16px}.sk-doodle{position:absolute;color:var(--sk-red);pointer-events:none}.sk-doodle-inline{display:block;margin:0 auto;color:var(--sk-ink)}.sk-pinky{display:block;width:calc(100% + 48px);aspect-ratio:2400/1180;margin:20px -24px 8px;background:var(--sk-red);-webkit-mask:url(/images/sketch-red-string.png) center/contain no-repeat;mask:url(/images/sketch-red-string.png) center/contain no-repeat}.sk-heart-inline{display:inline-block;width:18px;vertical-align:-3px;color:var(--sk-red)}.sk-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 28px;border:0;border-radius:4px;background:var(--sk-red);color:#FFF;font-family:var(--sk-font-hand);font-size:1.1rem;letter-spacing:.08em;text-decoration:none;cursor:pointer;box-shadow:3px 3px 0 var(--sk-ink);transition:transform .15s ease,box-shadow .15s ease,background .2s ease}.sk-btn:hover{background:var(--sk-red-deep);transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--sk-ink)}.sk-btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--sk-ink)}.sk-btn:disabled{opacity:.6;cursor:wait}.sk-btn:focus-visible{outline:2px dashed var(--sk-red);outline-offset:4px}.sk-btn-sm{padding:6px 16px;font-size:.95rem;box-shadow:2px 2px 0 var(--sk-ink)}.sk-btn-block{width:100%;margin-top:8px}.sk-cover{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;background:var(--sk-bg);font-family:var(--sk-font-hand);overflow-x:hidden;overflow-y:auto}.sk-cover-inner{box-sizing:border-box;width:min(440px,100%);padding:clamp(28px,7svh,64px) 20px clamp(24px,5svh,48px);text-align:center}.sk-cover-head{position:relative;padding:0 4px}.sk-cover-title{position:relative;font-size:clamp(1.6rem,8.6vw,2.9rem);letter-spacing:.08em;line-height:1.12}.sk-cover-ring{top:-34px;left:2%;width:clamp(64px,19vw,84px);transform:rotate(-12deg)}.sk-cover-bow,.sk-cover-ring{position:absolute;color:var(--sk-red);pointer-events:none}.sk-cover-bow{top:36%;right:-2%;width:clamp(56px,16vw,74px);transform:rotate(18deg)}.sk-cover-art{position:relative;width:min(250px,64vw,29svh);margin:clamp(12px,3svh,28px) auto clamp(14px,3svh,28px)}.sk-cover-couple{display:block;width:100%;height:auto;color:var(--sk-red)}.sk-cover-names{font-size:clamp(1.6rem,7vw,2rem);margin:0}.sk-cover-date,.sk-cover-names{font-family:var(--sk-font-hand);color:var(--sk-ink);letter-spacing:.16em}.sk-cover-date{font-size:clamp(1.4rem,6vw,1.75rem);margin:2px 0 0}.sk-cover-guest{font-size:1rem;color:var(--sk-muted);margin:14px 0 0}.sk-cover-guest span{color:var(--sk-ink)}.sk-cover .sk-btn{margin-top:clamp(16px,3svh,26px);min-width:210px;box-shadow:none;border-radius:8px}.sk-hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center}.sk-framed{position:relative;width:min(260px,72vw);aspect-ratio:3/4;margin:48px auto 32px}.sk-framed img{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);object-fit:cover;border-radius:46% 46% 18% 18%/30% 30% 10% 10%;background:var(--sk-red-bg)}.sk-framed-line{inset:-6px;width:calc(100% + 12px);height:calc(100% + 12px);pointer-events:none}.sk-framed-bow,.sk-framed-line{position:absolute;color:var(--sk-red)}.sk-framed-bow{top:-40px;left:50%;width:120px;transform:translateX(-50%);z-index:2}.sk-person{font-family:var(--sk-font-hand);color:var(--sk-red);font-size:clamp(1.4rem,6vw,1.7rem);letter-spacing:.12em;margin:0 0 8px}.sk-portrait{display:block;width:96px;height:96px;margin:0 auto 14px;object-fit:cover;border:2px solid var(--sk-red);border-radius:48% 52% 46% 54%/52% 46% 54% 48%;padding:3px;background:var(--sk-paper)}.sk-amp{font-family:var(--sk-font-display);color:var(--sk-red);font-size:2rem;margin:28px 0}.sk-story{list-style:none;margin:0;padding:0 0 0 28px;text-align:left;border-left:2px dashed var(--sk-red)}.sk-story li{position:relative;padding:0 0 32px 8px}.sk-story li:before{content:"";position:absolute;left:-38px;top:6px;width:16px;height:16px;border:2px solid var(--sk-red);border-radius:50% 45% 55% 48%;background:var(--sk-bg)}.sk-story-photo{float:right;width:92px;aspect-ratio:4/5;margin:0 0 8px 12px;padding:5px 5px 16px;object-fit:cover;background:var(--sk-paper);box-shadow:0 4px 12px rgba(20,19,17,.12);transform:rotate(3deg)}.sk-story li:nth-child(2n) .sk-story-photo{transform:rotate(-3deg)}.sk-story li:after{content:"";display:block;clear:both}.sk-story-year{font-family:var(--sk-font-display);color:var(--sk-red);font-size:1.4rem;letter-spacing:.06em}.sk-story-title{font-size:1.3rem;margin:2px 0 6px;color:var(--sk-ink);font-weight:400}.sk-std{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:28px}.sk-disco{width:130px;flex:none;color:var(--sk-ink);transform-origin:50% 0}.sk-std .sk-display{text-align:left;transform:rotate(-3deg)}.sk-calendar{margin:0 -24px 48px;border-top:2px solid var(--sk-red);border-bottom:2px solid var(--sk-red);transform:rotate(-3deg);color:var(--sk-red)}.sk-cal-row{display:grid;grid-template-columns:repeat(3,1fr)}.sk-cal-row>span{position:relative;padding:10px 4px;border-right:2px solid var(--sk-red)}.sk-cal-row>span:last-child{border-right:0}.sk-cal-head{border-bottom:2px solid var(--sk-red);font-size:1.1rem;text-transform:capitalize}.sk-cal-row:not(.sk-cal-head)>span{font-family:var(--sk-font-display);font-size:3.4rem;line-height:1.2;padding:18px 4px 26px}.sk-cal-circle{position:absolute;left:50%;top:50%;width:104px;transform:translate(-50%,-54%)}.sk-dday{position:absolute;right:6px;bottom:4px;font-family:var(--sk-font-hand);font-size:1rem;font-style:normal;transform:rotate(-10deg)}.sk-events{display:grid;gap:40px;margin-bottom:40px}.sk-event .sk-body{margin-bottom:16px}.sk-event strong{color:var(--sk-ink);font-weight:400;font-size:1.15rem}.sk-rundown{margin:20px 0 0;text-align:left}.sk-rundown>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:12px 4px;border-top:1.5px solid var(--sk-ink);font-size:1.15rem}.sk-rundown>div:last-child{border-bottom:1.5px solid var(--sk-ink)}.sk-rundown dt{color:var(--sk-ink)}.sk-rundown dd{margin:0;color:var(--sk-ink-2)}.sk-swatch{display:inline-block;width:14px;height:14px;margin-right:6px;border:1.5px solid var(--sk-ink);border-radius:50%;vertical-align:-2px}.sk-polaroids{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px}.sk-polaroid{margin:0;padding:8px 8px 30px;background:var(--sk-paper);box-shadow:0 6px 16px rgba(20,19,17,.12);cursor:pointer}.sk-polaroid img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--sk-red-bg)}.sk-polaroid figcaption{margin-top:8px;font-size:.9rem;color:var(--sk-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-card{position:relative;padding:22px 20px;background:var(--sk-paper);border:1.5px solid var(--sk-ink);border-radius:6px;box-shadow:5px 5px 0 var(--sk-red);text-align:left}.sk-label{margin:0 0 6px}.sk-input,.sk-label{display:block;font-size:1.05rem;color:var(--sk-ink)}.sk-input{width:100%;margin-bottom:16px;padding:10px 12px;border:1.5px solid var(--sk-line);border-radius:4px;background:var(--sk-bg);font-family:var(--sk-font-hand);resize:vertical}.sk-input:focus{outline:none;border-color:var(--sk-red)}.sk-radios{border:0;padding:0;margin:0 0 12px;display:flex;flex-wrap:wrap;gap:10px}.sk-radio{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1.5px dashed var(--sk-line);border-radius:999px;font-size:1rem;cursor:pointer}.sk-radio input{accent-color:var(--sk-red)}.sk-radio.is-on{border-style:solid;border-color:var(--sk-red);color:var(--sk-red)}.sk-form-status{margin:4px 0 8px;font-size:1rem}.sk-form-status.is-ok{color:#3B7D4A}.sk-form-status.is-err{color:var(--sk-red)}.sk-wishes{margin-top:40px;text-align:left}.sk-wishes ul{list-style:none;margin:0;padding:0;max-height:420px;overflow-y:auto}.sk-wish{padding:12px 2px;border-bottom:1.5px dashed var(--sk-line)}.sk-wish-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.sk-wish-head strong{font-weight:400;color:var(--sk-red);font-size:1.1rem}.sk-wish p{margin:4px 0 0;font-size:1.02rem;color:var(--sk-ink-2);line-height:1.5}.sk-badge{font-size:.85rem;padding:1px 10px;border-radius:999px;border:1.5px solid;white-space:nowrap}.sk-badge.is-yes{color:#3B7D4A}.sk-badge.is-no{color:var(--sk-red)}.sk-gifts{display:grid;gap:36px;margin-top:32px}.sk-gift{position:relative;padding:26px 28px 24px;text-align:left;background:var(--sk-paper)}.sk-gift-border{position:absolute;inset:0;width:100%;height:100%;color:var(--sk-ink);pointer-events:none}.sk-gift-bank{font-family:var(--sk-font-display);color:var(--sk-red);font-size:1.6rem;letter-spacing:.06em;margin:0 0 6px}.sk-gift-no{font-size:1.4rem;letter-spacing:.12em;margin:0 0 4px;color:var(--sk-ink)}.sk-gift-copy{position:absolute;right:22px;bottom:22px}.sk-closing{min-height:92svh;display:flex;align-items:center;text-align:left;padding-right:0}.sk-closing-text{position:relative;z-index:1;flex:1 1;padding-right:124px}.sk-count{display:flex;gap:10px;margin-top:16px}.sk-count-cell{display:flex;flex-direction:column;align-items:center;min-width:44px}.sk-count-num{font-family:var(--sk-font-display);color:var(--sk-red);font-size:2.2rem;line-height:1}.sk-count-label{font-size:.85rem;color:var(--sk-muted)}.sk-filmstrip{position:absolute;right:-34px;top:50%;translate:0 -50%;width:140px;display:flex;flex-direction:column;gap:10px;padding:14px 18px;background:radial-gradient(circle,var(--sk-bg) 2.5px,transparent 3px) 4px 6px /10px 14px repeat-y,radial-gradient(circle,var(--sk-bg) 2.5px,transparent 3px) calc(100% - 4px) 6px /10px 14px repeat-y,var(--sk-red-deep);box-shadow:0 10px 26px rgba(20,19,17,.2)}.sk-filmstrip img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--sk-red-bg)}.sk-music{margin-top:36px}.sk-music-card{display:flex;gap:14px;align-items:stretch;padding:12px;border-radius:12px;background:var(--sk-ink);color:#F5F2F0;text-align:left;box-shadow:0 10px 24px rgba(20,19,17,.25)}.sk-music-photo{width:96px;height:96px;flex:none;object-fit:cover;border-radius:8px;filter:grayscale(1) contrast(1.05);background:#2A2724}.sk-music-body{flex:1 1;min-width:0;display:flex;flex-direction:column;justify-content:center}.sk-music-title{margin:0 0 8px;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-music-bar{position:relative;height:4px;border-radius:4px;background:rgba(245,242,240,.25);cursor:pointer}.sk-music-bar:before{content:"";position:absolute;inset:-8px 0}.sk-music-bar:focus-visible{outline:2px dashed var(--sk-red);outline-offset:6px}.sk-music-fill{inset:0 auto 0 0;border-radius:inherit}.sk-music-fill,.sk-music-knob{position:absolute;background:var(--sk-red)}.sk-music-knob{top:50%;width:10px;height:10px;border-radius:50%;transform:translate(-50%,-50%)}.sk-music-times{display:flex;justify-content:space-between;margin-top:6px;font-size:.8rem;opacity:.75}.sk-music-controls{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:4px}.sk-music-controls button{display:grid;place-items:center;padding:4px;border:0;background:none;color:inherit;cursor:pointer}.sk-music-controls button:disabled{opacity:.4;cursor:default}.sk-music-play{width:40px;height:40px;border-radius:50%!important;background:#F5F2F0!important;color:var(--sk-ink)!important}.sk-music-fab{position:fixed;right:16px;bottom:18px;z-index:50;display:grid;place-items:center;width:48px;height:48px;border:1.5px solid var(--sk-ink);border-radius:50%;background:var(--sk-red);color:#FFF;box-shadow:3px 3px 0 var(--sk-ink);cursor:pointer}.sk-music-fab:before{content:"";position:absolute;inset:-7px;border:1.5px dashed var(--sk-red);border-radius:50%;opacity:0;transition:opacity .3s ease}.sk-music-fab.is-playing:before{opacity:1;animation:sk-spin 8s linear infinite}.sk-music-fab:focus-visible{outline:2px dashed var(--sk-ink);outline-offset:10px}.sk-fnav{position:fixed;right:6px;top:50%;translate:0 -50%;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.sk-fnav-item{display:flex;align-items:center;gap:6px;padding:3px;border:0;background:none;cursor:pointer}.sk-fnav-heart{width:11px;height:10px;fill:none;stroke:var(--sk-red);stroke-width:3;opacity:.55;transition:transform .2s ease,opacity .2s ease}.sk-fnav-item.is-active .sk-fnav-heart{fill:var(--sk-red);opacity:1;transform:scale(1.35)}.sk-fnav-label{padding:1px 8px;border:1.5px solid var(--sk-ink);border-radius:4px;background:var(--sk-paper);box-shadow:2px 2px 0 var(--sk-red);font-family:var(--sk-font-hand);font-size:.85rem;color:var(--sk-ink);white-space:nowrap;opacity:0;transform:translateX(6px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}.sk-fnav-item:focus-visible .sk-fnav-label,.sk-fnav-item:hover .sk-fnav-label{opacity:1;transform:none}.sk-fnav-item:focus-visible{outline:none}.sk-fnav-item:focus-visible .sk-fnav-heart{opacity:1}.sk-wishes{position:relative}.sk-table{position:absolute;right:-6px;top:-34px;width:78px;color:var(--sk-red);pointer-events:none}.sk-rundown-wrap{position:relative}.sk-heels{position:absolute;right:-14px;bottom:-78px;width:72px;color:var(--sk-red);transform:rotate(-6deg);pointer-events:none}.sk-booth-card{position:relative;margin-top:24px;padding:24px 20px 18px;border:2px dashed var(--sk-red);border-radius:14px 18px 12px 20px/18px 12px 20px 14px;background:var(--sk-paper);text-align:left}.sk-booth-lead{font-family:var(--sk-font-hand);font-size:1.3rem;line-height:1.35;color:var(--sk-ink);text-align:center;margin:0 0 16px}.sk-booth-hero{position:relative;height:196px;margin:-4px auto 14px;max-width:280px}.sk-booth-print{position:absolute;top:6px;left:50%;width:78px;padding:6px 6px 18px;background:#fff;border:1.5px solid var(--sk-ink);border-radius:3px;box-shadow:3px 4px 0 var(--sk-red-bg);transform-origin:50% 100%}.sk-booth-print img,.sk-booth-print-heart{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:var(--sk-red-bg)}.sk-booth-print-heart{padding:18px;color:var(--sk-red);box-sizing:border-box}.sk-booth-print-1{top:-6px;z-index:1}.sk-booth-camera{left:50%;bottom:0;z-index:2;width:168px;transform:translateX(-50%) rotate(-3deg);background:radial-gradient(ellipse 46% 40% at 50% 62%,var(--sk-paper) 98%,transparent 100%)}.sk-booth-camera,.sk-booth-flash{position:absolute;color:var(--sk-red)}.sk-booth-flash{z-index:3;right:14px;top:64px;width:22px}.sk-booth-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 16px}.sk-booth-opt{padding:12px 10px;border:1.5px solid var(--sk-line);border-radius:12px 16px 10px 14px/14px 10px 16px 12px;background:var(--sk-bg);text-align:center}.sk-booth-opt p{margin:4px 0 0;font-size:.95rem;line-height:1.4;color:var(--sk-ink-2)}.sk-booth-icon{width:52px;height:36px;margin:0 auto 6px}.sk-booth-icon,.sk-booth-tag{display:block;color:var(--sk-red)}.sk-booth-tag{font-size:1.08rem;letter-spacing:.04em}.sk-booth-steps{list-style:none;display:flex;justify-content:space-between;gap:6px;margin:0 0 16px;padding:0;font-size:.92rem;color:var(--sk-ink-2)}.sk-booth-steps li{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;position:relative}.sk-booth-steps li+li:before{content:"";position:absolute;top:13px;right:calc(50% + 18px);width:calc(100% - 30px);border-top:1.5px dashed var(--sk-line)}.sk-booth-steps b{display:grid;place-items:center;width:28px;height:28px;border:1.5px solid var(--sk-red);border-radius:50% 46% 52% 48%;color:var(--sk-red);font-family:var(--sk-font-display);font-weight:400;background:var(--sk-paper)}.sk-booth-note{font-size:.9rem;color:var(--sk-muted);text-align:center;margin:12px 0 0}@media (max-width:340px){.sk-booth-options{grid-template-columns:1fr}}.sk-footer{padding:32px 24px calc(96px + env(safe-area-inset-bottom));border-top:1.5px dashed var(--sk-line);text-align:center;color:var(--sk-muted);font-size:.95rem;line-height:1.6}.sk-footer p{margin:6px 0 0}.sk-footer-names{color:var(--sk-red);font-size:1.1rem;letter-spacing:.12em}.sk-float{animation:sk-float 4.5s ease-in-out infinite}.sk-float-slow{animation:sk-float 7s ease-in-out infinite}.sk-swing{animation:sk-swing 5s ease-in-out infinite}@keyframes sk-float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(8deg)}}@keyframes sk-spin{to{transform:rotate(1turn)}}@keyframes sk-swing{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@media (prefers-reduced-motion:reduce){.sk-float,.sk-float-slow,.sk-music-fab.is-playing:before,.sk-swing{animation:none}}@media (max-width:360px){.sk-disco{width:100px}.sk-closing-text{padding-right:90px}.sk-filmstrip{width:116px}}