@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/cormorant-garamond-latin-300-normal.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-latin-500-normal.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-latin-400-italic.woff2)format("woff2")}@font-face{font-family:Pinyon Script;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/pinyon-script-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jost-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jost-latin-500-normal.woff2)format("woff2")}:root{--table:#7c8b69;--table-deep:#5f6d4f;--cream:#f5f0e3;--cream-soft:#f5f0e3c7;--paper:#faf8f2;--ivory:#eee6d3;--forest:#2f4a37;--forest-soft:#4f6553;--sage:#9aaa8a;--ink:#1e2419;--shadow-rest:0 .5px 1px #141a1147, 0 2px 4px -1px #141a1138, 0 10px 18px -8px #141a1159;--shadow-lift:0 1px 2px #141a1133, 0 8px 14px -6px #141a114d, 0 28px 44px -16px #141a1180;--font-text:"Jost", "Futura", "Avenir Next", "Helvetica Neue", sans-serif;--font-accent:"Cormorant Garamond", "Cormorant", Garamond, "Times New Roman", serif;--font-script:"Pinyon Script", "Snell Roundhand", "Apple Chancery", cursive;--tracking:.24em;--foot-h:64px;--stage-h:calc(100svh - var(--foot-h));--env-w:min(560px, calc(100vw - 48px), calc(var(--stage-h) * .5));--spread-hu:158;--spread-w:min(520px, calc(100vw - 24px), calc((var(--stage-h) - 16px) / 1.58));--u:calc(var(--spread-w) / 100)}@media (min-aspect-ratio:5/4){:root{--spread-hu:50;--spread-w:min(1100px, calc(100vw - 64px), calc((var(--stage-h) - 40px) * 2))}}*,:before,:after{box-sizing:border-box}html{scrollbar-gutter:stable;background:var(--table) url(/textures/linen.webp) 0 0 / 256px 256px;color:var(--cream);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100svh;font-family:var(--font-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0;font-weight:400;line-height:1.5;overflow-x:clip}h1,h2,p,figure{margin:0}img,svg{display:block}button{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:1.5px solid var(--cream);outline-offset:4px}.label{font-family:var(--font-text);letter-spacing:var(--tracking);text-transform:uppercase;color:var(--cream-soft);font-size:11px;font-weight:500}.grain{z-index:50;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .2 0 0 0 0 .17 0 0 0 0 .13 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:220px 220px;position:fixed;inset:0}.svg-defs{width:0;height:0;position:absolute;overflow:hidden}html.is-locked,html.is-locked body{overscroll-behavior:none;overflow:hidden}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}.hero{grid-template-rows:1fr var(--foot-h);background:radial-gradient(85% 60% at 28% 12%,#fffbec24,#0000 65%),radial-gradient(130% 95% at 50% 45%,#0000 50%,#141a1133);height:100svh;display:grid;position:relative}.stage{place-items:center;min-height:0;display:grid;position:relative}.env{width:var(--env-w);aspect-ratio:7/5;position:relative}.js .env{opacity:0;visibility:hidden}.env__float{position:absolute;inset:0}.env__float>*{position:absolute}.env__back,.env__pocket,.env__flap-shadow{inset:0}.env__back svg,.env__pocket>svg,.env__flap-shadow svg,.env__flap-face svg{width:100%;height:100%;overflow:visible}.env__shadow{filter:blur(14px);transform-origin:50% 100%;background:#141a116b;border-radius:6px;position:absolute;inset:2% -1% -3% 1%}.env__shadow:after{content:"";filter:blur(3px);background:#141a1180;border-radius:6px;position:absolute;inset:-1% .5% 2.5% -.5%}.env__slot{pointer-events:none;inset:0}.env__slot>.item{pointer-events:auto;position:absolute}.js .env__slot{clip-path:polygon(-500% -500%,600% -500%,600% -1%,100% -1%,51.9% 49.6%,50% 49.2%,48.1% 49.6%,0% -1%,-500% -1%)}.env__back{z-index:1;border-radius:6px}.env__pocket{z-index:5}.env__flap-shadow{z-index:6}.env__invite{left:50%;top:calc(100% + var(--env-w) * .085);font-family:var(--font-script);font-size:max(28px, calc(var(--env-w) * .088));white-space:nowrap;color:var(--cream);text-shadow:0 1px 2px #141a1140;pointer-events:none;margin:0;line-height:1.2;position:absolute;translate:-50%}.env__flap{z-index:7;transform-origin:50% 0;width:100%;height:60.8%;transform-style:preserve-3d;top:0;left:0}.env__flap-face{backface-visibility:hidden;position:absolute;inset:0}.env__flap-face--in{transform:rotateX(180deg)}.env__flap-shade{opacity:0;clip-path:polygon(0 0,100% 0,50% 100%);background:#1e2419;position:absolute;inset:0}.env__flap-face--in .env__flap-shade{clip-path:polygon(0 100%,100% 100%,50% 0)}.seal{z-index:8;aspect-ratio:1;width:17%;top:55.5%;left:50%;translate:-50% -50%}.seal svg{width:100%;height:100%;overflow:visible}.env__hit{z-index:9;cursor:pointer;background:0 0;border:0;border-radius:6px;margin:0;padding:0;inset:0}.env__hit:focus-visible{outline:1.5px solid var(--cream);outline-offset:10px}.env__hit:disabled{cursor:default}.hero__foot{padding-bottom:env(safe-area-inset-bottom);place-items:center;display:grid}.hero__foot>*{grid-area:1/1}.scroll-cue{color:var(--cream);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;margin:0;padding:6px 14px;display:flex}.scroll-cue[hidden]{display:none}.scroll-cue__text{font-family:var(--font-text);letter-spacing:var(--tracking);padding-left:var(--tracking);text-transform:uppercase;color:var(--cream-soft);font-size:10px}.scroll-cue__arrow{width:10px;height:26px;animation:2.6s ease-in-out infinite scroll-cue;overflow:visible}.scroll-cue__arrow path{fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}@keyframes scroll-cue{0%,to{opacity:.45;transform:translateY(-3px)}50%{opacity:1;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.scroll-cue__arrow{animation:none}}.reopen-row{justify-content:center;padding:0 24px;display:flex}.reopen{padding:10px 2px 10px calc(2px + var(--tracking));cursor:pointer;font-family:var(--font-text);letter-spacing:var(--tracking);text-transform:uppercase;color:var(--cream-soft);background:0 0;border:0;font-size:11px;font-weight:500;position:relative}.reopen:after{content:"";left:calc(2px + var(--tracking));right:calc(2px + var(--tracking));background:var(--cream);transform-origin:0;height:1px;transition:transform .6s cubic-bezier(.22,1,.36,1);position:absolute;bottom:5px;transform:scaleX(.35)}.reopen:hover:after,.reopen:focus-visible:after{transform:scaleX(1)}html:not(.js) .env__back,html:not(.js) .env__pocket,html:not(.js) .env__flap,html:not(.js) .env__flap-shadow,html:not(.js) .seal,html:not(.js) .env__hit,html:not(.js) .env__invite,html:not(.js) .env__shadow,html:not(.js) .hero__foot{display:none}.card{outline:none;container-type:inline-size}.card:focus-visible .card__paper{outline:1.5px solid var(--cream);outline-offset:6px}.card__shadow{border-radius:2px;position:absolute;inset:.6cqw}.card__shadow--tight{box-shadow:0 .5px 1px #141a114d,0 3px 7px -2px #141a114d}.card__shadow--wide{opacity:0;box-shadow:var(--shadow-lift)}.card__paper{background:linear-gradient(150deg, #ffffff59, transparent 45%, #1e24190d), url(/textures/paper-white.webp) 0 0 / 420px 420px, var(--paper);position:absolute;inset:0;overflow:hidden;-webkit-mask:url(/textures/deckle.svg) 0 0/100% 100% no-repeat;mask:url(/textures/deckle.svg) 0 0/100% 100% no-repeat}.card__sheen{z-index:2;pointer-events:none;opacity:0;background:linear-gradient(105deg,#fff0 38%,#ffffff47 50%,#fff0 62%);position:absolute;inset:-40%}.card__content{z-index:1;text-align:center;height:100%;color:var(--forest);flex-direction:column;justify-content:center;align-items:center;padding:6cqw 8cqw 5.4cqw;display:flex;position:relative}.card__content>:not(.stamp){text-shadow:0 .5px #ffffffd9,0 -.5px #1e241914}.stamp{pointer-events:none;width:14cqw;position:absolute;top:4.6cqw;right:5cqw;rotate:3deg}.stamp__paper{--hole:.75cqw;aspect-ratio:5/6;-webkit-mask:linear-gradient(#000 0 0) center / calc(100% - 2 * var(--hole)) calc(100% - 2 * var(--hole)) no-repeat, radial-gradient(circle, transparent calc(var(--hole) * .62), #000 calc(var(--hole) * .62 + .5px)) calc(-1 * var(--hole)) calc(-1 * var(--hole)) / calc(2 * var(--hole)) calc(2 * var(--hole)) round;-webkit-mask:linear-gradient(#000 0 0) center / calc(100% - 2 * var(--hole)) calc(100% - 2 * var(--hole)) no-repeat, radial-gradient(circle, transparent calc(var(--hole) * .62), #000 calc(var(--hole) * .62 + .5px)) calc(-1 * var(--hole)) calc(-1 * var(--hole)) / calc(2 * var(--hole)) calc(2 * var(--hole)) round;mask:linear-gradient(#000 0 0) center / calc(100% - 2 * var(--hole)) calc(100% - 2 * var(--hole)) no-repeat, radial-gradient(circle, transparent calc(var(--hole) * .62), #000 calc(var(--hole) * .62 + .5px)) calc(-1 * var(--hole)) calc(-1 * var(--hole)) / calc(2 * var(--hole)) calc(2 * var(--hole)) round;filter:drop-shadow(0 .5px .8px #141a1180)drop-shadow(.3cqw .5cqw .6cqw #141a112e);background:#f3eee0;position:relative}.stamp__photo{position:absolute;inset:1.7cqw;overflow:hidden}.stamp__photo img{object-fit:cover;filter:grayscale()contrast(1.05)brightness(1.04)sepia(.25)hue-rotate(50deg)saturate(.9);width:100%;height:100%}.postmark{fill:#2f4a3780;stroke:#2f4a376b;width:21cqw;height:auto;font-family:var(--font-text);mix-blend-mode:multiply;font-weight:500;position:absolute;top:4.6cqw;left:-9cqw;overflow:visible;rotate:-9deg}.postmark text{stroke:none}.card__eyebrow{flex-direction:column;align-items:center;margin-bottom:1.6cqw;line-height:1;display:flex}.card__eyebrow-caps{font-family:var(--font-accent);letter-spacing:.32em;text-transform:uppercase;color:var(--forest-soft);padding-left:.32em;font-size:max(11px,2.7cqw);font-weight:500}.card__eyebrow-script{font-family:var(--font-script);color:var(--forest);margin-top:-1.2cqw;font-size:7.4cqw;line-height:1.15}.card__names{font-family:var(--font-accent);letter-spacing:.01em;color:var(--forest);white-space:nowrap;font-size:9.4cqw;font-weight:300;line-height:1}.card__amp{color:var(--forest-soft);margin:0 .08em;font-size:.86em;font-style:italic;font-weight:400;display:inline-block}.card__gap{background:linear-gradient(90deg, transparent, var(--sage), transparent);width:16cqw;height:1px;margin:2.6cqw 0 2.3cqw}.card__date{font-family:var(--font-accent);font-variant-numeric:lining-nums;letter-spacing:.14em;color:var(--forest);padding-left:.14em;font-size:5.6cqw;font-weight:400;line-height:1.1}.card__date time{align-items:baseline;display:inline-flex}.mask{vertical-align:bottom;padding:.04em .02em;display:inline-block;overflow:hidden}.mask>span{display:inline-block}.card__dot{color:var(--sage);margin:0 .2em;font-size:.8em}.card__place{padding-left:var(--tracking);color:var(--forest-soft);margin-top:1.8cqw;font-size:max(10px,2.1cqw)}.card__note{margin-top:1.4cqw;display:grid}.card__note>*{grid-area:1/1}.card__message,.card__feedback{font-family:var(--font-accent);letter-spacing:.01em;color:var(--forest-soft);font-size:max(14px,3.2cqw);font-style:italic;font-weight:400;line-height:1.3}.card__feedback{opacity:0;visibility:hidden}.card__actions{flex-wrap:wrap;justify-content:center;gap:2.4cqw;width:100%;margin-top:3.4cqw;display:flex}.btn{max-width:38cqw;min-height:max(36px,6.6cqw);color:var(--forest);font-family:var(--font-text);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;border:1px solid #2f4a37a6;border-radius:1px;flex:1 1 0;place-items:center;padding:0 1.6cqw;font-size:max(9px,1.65cqw);font-weight:500;text-decoration:none;transition:color .45s cubic-bezier(.22,1,.36,1);display:grid;position:relative;overflow:hidden}.btn__fill{background:var(--forest);transform-origin:50% 100%;transition:transform .5s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scaleY(0)}.btn__text{padding-left:.13em;position:relative}@media (hover:hover){.btn:hover{color:var(--paper)}.btn:hover .btn__fill{transform:scaleY(1)}}.btn:focus-visible{color:var(--paper)}.btn:focus-visible .btn__fill{transform:scaleY(1)}.btn:active{color:var(--paper)}.btn:active .btn__fill{transition-duration:.15s;transform:scaleY(1)}@media (prefers-reduced-motion:reduce){.btn,.btn__fill,.reopen:after{transition-duration:10ms!important}}.item{--h:calc(var(--w) * var(--ratio));left:calc(50% + (var(--cx) - 50 - var(--w) / 2) * var(--u));top:calc(50% + (var(--cy) - var(--spread-hu) / 2 - var(--h) / 2) * var(--u));width:calc(var(--w) * var(--u));height:calc(var(--h) * var(--u))}.strip{--cx:21;--cy:45;--w:30;--ratio:3;--rest:-5;z-index:3}.vinyl{--cx:68;--cy:44.5;--w:58;--ratio:1;--rest:0;z-index:2}.card{--cx:50;--cy:122.8;--w:94;--ratio:.714;--rest:-1;z-index:4}@media (min-aspect-ratio:5/4){.strip{--cx:12;--cy:25;--w:15;--rest:-5}.vinyl{--cx:86;--cy:24;--w:27}.card{--cx:47;--cy:25.5;--w:55;--rest:-.8}}.strip{margin:0;container-type:inline-size}.strip__paper{box-shadow:var(--shadow-rest);background:linear-gradient(90deg,#1e241912,#0000 12% 85%,#1e241917),linear-gradient(170deg,#fff,#f6f4ee);border-radius:1px;flex-direction:column;gap:5cqw;padding:7cqw 7cqw 0;display:flex;position:absolute;inset:0}.strip__paper:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ffffff38 42%,#0000 52%);position:absolute;inset:0}.strip__photo{aspect-ratio:1;background:#d9d8d2;flex:none;overflow:hidden;box-shadow:inset 0 0 0 .5px #0003}.strip__photo img{object-fit:cover;filter:contrast(1.06)sepia(.06);width:100%;height:100%}.vinyl{container-type:inline-size}.vinyl__button{cursor:pointer;background:0 0;border:0;border-radius:50%;margin:0;padding:0;position:absolute;inset:0}.vinyl__button:focus-visible{outline:1.5px solid var(--cream);outline-offset:6px}.vinyl__shadow,.vinyl__disc,.vinyl__sheen,.vinyl__hole{border-radius:50%;position:absolute}.vinyl__shadow{inset:0;box-shadow:1px 2px 3px #141a1173,3px 10px 22px -4px #141a118c}.vinyl__disc{background:radial-gradient(circle,#0000 0 33%,#ffffff0f 33.4%,#0000 34.2% 60%,#ffffff0d 60.4%,#0000 61.2% 96.6%,#ffffff1f 97.2%,#0009 99%),repeating-radial-gradient(circle,#131313 0,#1c1c1c .45cqw,#131313 .9cqw),#111;place-items:center;display:grid;inset:0}.vinyl__label{aspect-ratio:1;background:radial-gradient(circle, transparent 0 62%, #2f4a37e6 62.5% 64%, transparent 64.5%), url(/textures/paper-cream.webp) center / 60cqw 60cqw, var(--ivory);border-radius:50%;flex-direction:column;justify-content:space-between;align-items:center;width:36%;padding:3.4cqw 0 3.6cqw;display:flex;position:relative;box-shadow:inset 0 0 0 .4cqw #00000040}.vinyl__foot{flex-direction:column;align-items:center;gap:.6cqw;display:flex}.vinyl__side{font-family:var(--font-text);letter-spacing:.24em;text-transform:uppercase;color:var(--forest-soft);padding-left:.24em;font-size:1.45cqw;font-weight:500}.vinyl__mono{font-family:var(--font-accent);color:var(--forest);font-size:6.4cqw;font-weight:400;line-height:1}.vinyl__amp{color:var(--forest-soft);margin:0 .06em;font-size:.8em;font-style:italic}.vinyl__date{font-family:var(--font-text);letter-spacing:.18em;color:var(--forest);padding-left:.18em;font-size:2cqw;font-weight:500}.vinyl__sheen{pointer-events:none;background:conic-gradient(#fff0 0deg,#ffffff08 20deg,#ffffff29 38deg,#ffffff08 58deg,#fff0 90deg 180deg,#ffffff08 200deg,#ffffff1c 218deg,#ffffff08 238deg,#fff0 270deg);inset:0;-webkit-mask:radial-gradient(circle,#0000 0 18.5%,#000 19% 98%,#0000 99%);mask:radial-gradient(circle,#0000 0 18.5%,#000 19% 98%,#0000 99%)}.vinyl__hole{aspect-ratio:1;background:var(--table-deep);width:3.4%;top:50%;left:50%;translate:-50% -50%;box-shadow:inset .3cqw .4cqw .5cqw #0000008c}.player{color:var(--cream);cursor:pointer;white-space:nowrap;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:10px;margin:0;padding:4px 8px 4px 4px;display:flex;position:absolute;top:calc(100% + 2.4cqw);left:50%;translate:-50%}.js .player{opacity:0;visibility:hidden}.player:focus-visible{outline:1.5px solid var(--cream);outline-offset:2px;border-radius:999px}.player__icon{border:1px solid #f5f0e3b3;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;transition:background-color .4s cubic-bezier(.22,1,.36,1),color .4s cubic-bezier(.22,1,.36,1);display:grid;box-shadow:0 1px 2px #141a112e}.player__icon svg{width:18px;height:18px;overflow:visible}.player__play{fill:currentColor}.player__pause{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round}.player[aria-pressed=true] .player__play,.player[aria-pressed=false] .player__pause{display:none}.player__text{text-shadow:0 1px 2px #141a1140;flex-direction:column;gap:1px;line-height:1.1;display:flex}.player__title{font-family:var(--font-accent);font-size:17px;font-style:italic;font-weight:400}.player__artist{font-family:var(--font-text);letter-spacing:.22em;text-transform:uppercase;color:var(--cream-soft);font-size:9px;font-weight:500}@media (hover:hover){.player:hover .player__icon{background:var(--cream);color:var(--forest)}}.player:active .player__icon{background:var(--cream);color:var(--forest);transition-duration:.1s}.countdown{text-align:center;flex-direction:column;align-items:center;padding:clamp(12px,3vh,32px) 24px clamp(48px,8vh,88px);display:flex}.countdown__label{font-family:var(--font-script);color:var(--cream);text-shadow:0 1px 2px #141a1140;font-size:clamp(34px,9vw,48px);font-weight:400;line-height:1.1}.countdown__grid{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,460px);margin-top:18px;display:grid}.countdown__unit{flex-direction:column;align-items:center;gap:8px;padding:6px 4px;display:flex;position:relative}.countdown__unit+.countdown__unit:before{content:"";background:#f5f0e359;width:1px;position:absolute;top:18%;bottom:24%;left:0}.countdown__num{font-family:var(--font-accent);font-variant-numeric:tabular-nums lining-nums;color:var(--cream);text-shadow:0 1px 2px #141a1138;font-size:clamp(48px,13vw,84px);font-weight:300;line-height:1}.countdown__name{font-family:var(--font-text);letter-spacing:var(--tracking);padding-left:var(--tracking);text-transform:uppercase;color:var(--cream-soft);font-size:10px;font-weight:500}.countdown__note{font-family:var(--font-accent);color:var(--cream);align-items:center;gap:14px;margin-top:30px;font-size:21px;font-style:italic;font-weight:400;display:flex}.countdown__rule{background:#f5f0e380;width:28px;height:1px}.footer{padding:32px 24px calc(64px + env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:10px;display:flex}.footer__mono{font-family:var(--font-accent);color:var(--cream);align-items:baseline;font-size:42px;font-weight:300;line-height:1;display:flex}.footer__amp{color:var(--cream-soft);margin:0 .08em;font-size:.62em;font-style:italic;font-weight:400}.footer__date{padding-left:var(--tracking);font-size:10px}
