.ps{--tex-cotton:url(/templates/pearl-shore/cotton.webp);--tex-laid:url(/templates/pearl-shore/laid.webp);--wash-band:url(/templates/pearl-shore/wash-band.webp);--wash-sea:url(/templates/pearl-shore/wash-sea.webp);--pigment:linear-gradient(172deg,color-mix(in srgb,var(--accent) 78%,var(--card)) 0%,var(--accent) 48%,color-mix(in srgb,var(--accent) 80%,var(--text)) 100%);--hair:color-mix(in srgb,var(--text) 18%,transparent);--ground:var(--bg);--shadow:40 34 26;background:var(--bg);color:var(--text);font-family:var(--font-body),"EB Garamond",Georgia,serif;font-size:19px;line-height:1.65;-webkit-font-smoothing:antialiased;font-variant-numeric:lining-nums;min-height:100%;overflow-x:clip;caret-color:var(--accent-ink);--font-script:var(--psf-vibes);--font-display:var(--psf-gilda);--font-body:var(--psf-garamond);--script-scale:1}.ps[data-fonts=amalfi]{--font-script:var(--psf-alex);--font-display:var(--psf-marcellus);--font-body:var(--psf-spectral);--script-scale:1.02;font-size:17.5px;font-weight:300}.ps[data-fonts=modern]{--font-script:var(--psf-bellefair);--font-display:var(--psf-bellefair);--font-body:var(--psf-jost);--script-scale:0.66;font-size:17px;font-weight:300}.ps ::selection{background:color-mix(in srgb,var(--accent) 28%,var(--card));color:var(--text)}.ps-c{container-type:inline-size;container-name:ps}.ps *,.ps :after,.ps :before{box-sizing:border-box}:where(.ps) :is(h1,h2,h3,p){margin:0}.ps a{color:inherit}.ps :is(.ps-cover-names,.ps-env-names,.ps-env-card-names,.ps-footer-names,.cd-done,.rsvp-done-title,.ps-env-to,.ps-bar-mono,.ps-seal-face,.ps-note-sign){font-family:var(--font-script),cursive;font-weight:400}.ps[data-fonts=modern] :is(.ps-cover-names,.ps-env-names,.ps-env-card-names,.ps-footer-names,.cd-done,.rsvp-done-title,.ps-env-to,.ps-note-sign){letter-spacing:.06em;text-transform:uppercase}.ps-amp{font-family:var(--font-body),serif;font-style:italic;font-weight:400;font-size:.4em;margin:0 .3em;vertical-align:.32em;color:var(--accent-ink);text-transform:none;letter-spacing:0}.ps[data-fonts=amalfi] .ps-amp{font-size:.5em;vertical-align:.24em}.ps[data-fonts=modern] .ps-amp{font-size:.62em;vertical-align:.08em;margin:0 .22em}.ps-title{font-family:var(--font-display),serif;font-weight:400;font-size:clamp(2.3rem,8cqw,3.9rem);line-height:1.06;letter-spacing:-.01em;color:inherit;text-wrap:balance}.ps[data-fonts=amalfi] .ps-title{font-size:clamp(1.8rem,6.6cqw,3.2rem);letter-spacing:.08em;text-transform:uppercase}.ps[data-fonts=modern] .ps-title{letter-spacing:.02em}.ps-lead{font-size:1.14rem;line-height:1.8;max-width:34rem;margin:0 auto;text-wrap:pretty}.ps-body{font-size:1.1rem;line-height:1.85;text-wrap:pretty}.ps-link{display:inline-block;padding:.75rem .4rem;margin:-.75rem -.4rem;font-family:var(--font-display),serif;font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-ink) 40%,transparent);text-decoration-thickness:1px;text-underline-offset:7px;transition:text-decoration-color .3s}.ps-link:hover{text-decoration-color:var(--accent-ink)}.ps-link:focus-visible,.ps-top-rsvp:focus-visible{outline:1px solid var(--accent-ink);outline-offset:2px}.ps-url{font-size:.85rem;color:var(--text-soft);word-break:break-all;margin-top:.5rem}.ps-wash{display:block;pointer-events:none;background:var(--pigment);-webkit-mask:var(--wash) center /cover no-repeat;mask:var(--wash) center /cover no-repeat}.ps-wash-band{--wash:var(--wash-band)}.ps-wash-sea{--wash:var(--wash-sea)}.ps-stroke{width:clamp(6rem,22cqw,8.5rem);height:clamp(.85rem,2.6cqw,1.1rem);margin:1.1rem auto 0;-webkit-mask-size:100% 100%;mask-size:100% 100%;opacity:.85}.ps-postmark{display:block;overflow:visible;color:var(--accent-ink)}.ps-postmark-type{font-family:var(--font-display),serif}.ps-seal{position:absolute;display:grid!important;place-items:center;aspect-ratio:1;border-radius:50%;overflow:hidden;container-type:inline-size;background:var(--card);box-shadow:0 1px 1.5px rgb(var(--shadow)/.3),0 7px 12px -2px rgb(var(--shadow)/.22)}.ps-seal-paint{position:absolute;inset:0;background:var(--pigment);-webkit-mask:var(--wash-sea) 50% 70% /190% no-repeat;mask:var(--wash-sea) 50% 70% /190% no-repeat}.ps-seal-face{position:relative;display:grid;grid-auto-flow:column;align-items:center;justify-content:center;width:68%;aspect-ratio:1;border-radius:50%;background:var(--card);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent-ink);font-size:26cqw;line-height:1;padding-top:.08em}.ps-seal-face i{font-family:var(--font-body),serif;font-size:.45em;margin:0 .06em}.ps-stamp{--r:2.6px;position:absolute;container-type:inline-size;aspect-ratio:.82;padding:calc(var(--r) * 1.6);-webkit-mask:radial-gradient(circle,#0000 calc(var(--r) - .5px),#000 var(--r)) calc(var(--r) * -1.5) calc(var(--r) * -1.5) /calc(var(--r) * 3) calc(var(--r) * 3),linear-gradient(#000 0 0) content-box;mask:radial-gradient(circle,#0000 calc(var(--r) - .5px),#000 var(--r)) calc(var(--r) * -1.5) calc(var(--r) * -1.5) /calc(var(--r) * 3) calc(var(--r) * 3),linear-gradient(#000 0 0) content-box;filter:drop-shadow(0 1px 1px rgb(var(--shadow)/.25))}.ps-stamp,.ps-stamp-paper{display:block;background:var(--card)}.ps-stamp-paper{position:relative;height:100%;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.ps-stamp-sea{position:absolute;inset:7% 7% 26%;background:var(--pigment);-webkit-mask:var(--wash-sea) 50% 75% /cover no-repeat;mask:var(--wash-sea) 50% 75% /cover no-repeat}.ps-stamp-town{position:absolute;left:4%;right:4%;bottom:6%;text-align:center;font-size:12cqw;line-height:1.4;letter-spacing:.06em;color:var(--accent-ink);white-space:nowrap;overflow:hidden}.ps .ps-btn,.ps-stamp-town{font-family:var(--font-display),serif;text-transform:uppercase}.ps .ps-btn{position:relative;display:inline-grid;place-items:center;min-height:3.2rem;padding:0 2.3rem;border:1px solid var(--accent-ink);border-radius:2px;background:var(--accent-ink);color:var(--card);font-size:.82rem;font-weight:400;letter-spacing:.28em;text-decoration:none;cursor:pointer;box-shadow:0 10px 22px -12px rgb(var(--shadow)/.55);transition:background .35s ease,color .35s ease,translate .35s ease}.ps-btn>span{padding-left:.28em}.ps .ps-btn:focus-visible,.ps .ps-btn:hover{background:color-mix(in srgb,var(--accent-ink) 82%,var(--text));translate:0 -1px;outline:none}.ps .ps-btn:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.ps .ps-btn-small{min-height:2.75rem;padding:0 1.3rem;font-size:.76rem;background:transparent;color:var(--accent-ink);box-shadow:none}.ps .ps-btn-small:focus-visible,.ps .ps-btn-small:hover{background:var(--accent-ink);color:var(--card)}.ps-block,.ps-cover,.ps-footer{background-color:var(--bg);background-image:var(--tex-cotton);background-size:360px;background-blend-mode:soft-light}.ps-block{position:relative;padding:clamp(4.4rem,12cqw,7.4rem) 1.5rem;text-align:center}.ps-block.ps-tone-raised{background-color:var(--raised)}.ps-tone-raised{--ground:var(--raised)}.ps-inner{position:relative;max-width:60rem;margin:0 auto}.ps-narrow .ps-inner,.ps-narrow-inner{max-width:38rem;margin:0 auto}.ps-narrow .ps-head{width:min(100cqw - 3rem,56rem);margin-left:50%;translate:-50% 0}.ps-wide .ps-inner{max-width:66rem}.ps-center{text-align:center}.ps-head{margin-bottom:clamp(2.2rem,6cqw,3.2rem)}.ps-head-bare .ps-title{padding-bottom:.1em}.ps-card,.ps-event,.ps-stay{--ground:var(--card);position:relative;background:var(--card) var(--tex-cotton) 0 0 /360px;background-blend-mode:soft-light;color:var(--text);border-radius:2px;box-shadow:inset 0 0 0 .6rem var(--card),inset 0 0 0 calc(.6rem + 1px) color-mix(in srgb,var(--accent) 38%,transparent),0 1px 2px rgb(var(--shadow)/.12),0 26px 44px -26px rgb(var(--shadow)/.45)}.ps-card{max-width:36rem;margin:0 auto;padding:3.6rem 1.7rem 3rem}@container ps (min-width: 640px){.ps-card{padding:4.4rem 3.6rem 3.6rem}}.ps-card .ps-title{font-size:clamp(2.2rem,7.2cqw,3.3rem)}.ps-bar{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;max-width:76rem;margin:0 auto;padding:.5rem 1.1rem 0 1.25rem}.ps-bar-mono{font-size:calc(2rem * var(--script-scale));line-height:1;color:var(--accent-ink);padding-top:.15em}.ps-bar-mono i{font-family:var(--font-body),serif;font-size:.5em;margin:0 .12em}.ps-top-rsvp{display:inline-flex;align-items:center;min-height:44px;padding:0 .5rem;font-family:var(--font-display),serif;font-size:.8rem;letter-spacing:.26em;text-transform:uppercase;color:var(--accent-ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-ink) 40%,transparent);text-underline-offset:6px}.ps-cover{position:relative;padding-bottom:clamp(3.8rem,11cqw,6rem);text-align:center}.ps-cover-scene{position:relative;padding:clamp(3rem,12cqw,4rem) 1.25rem clamp(4.2rem,18cqw,6rem)}.ps-cover-sea{position:absolute;left:0;right:0;top:-1.2rem;bottom:0}.ps-cover-print{position:relative;width:min(54cqw,24rem);margin:0 auto}.ps-print-frame{position:relative;padding:clamp(.55rem,2.2cqw,.85rem);background:var(--card) var(--tex-cotton) 0 0 /300px;background-blend-mode:soft-light;rotate:-1.4deg;box-shadow:0 1px 2px rgb(var(--shadow)/.18),0 22px 36px -14px rgb(var(--shadow)/.42)}.ps-cover-photo,.ps-print-sea{aspect-ratio:4/5;overflow:hidden;background:var(--raised)}.ps-print-sea{background:var(--pigment)}.ps-cover-postmark{position:absolute;z-index:2;right:-27%;top:-7%;width:70%;rotate:-9deg;opacity:.88;mix-blend-mode:multiply;pointer-events:none}.ps-cover-text{position:relative;padding:.6rem 1.25rem 0}.ps-cover-names{font-size:calc(clamp(3.5rem, 16cqw, 6.6rem) * var(--script-scale) * var(--name-fit, 1));line-height:1.12;text-wrap:balance}.ps-cover-date{display:block;margin:.9rem auto 0;padding-left:.3em;font-family:var(--font-display),serif;font-size:clamp(.84rem,3.2cqw,1rem);letter-spacing:.3em;text-transform:uppercase;text-wrap:balance}.ps-cover-venue{display:block;margin:.4rem auto 0;font-family:var(--font-body),serif;font-style:italic;font-size:clamp(1.1rem,4.4cqw,1.3rem);color:var(--text-soft)}.ps-cover-reply{margin-top:2rem}.ps-cover-reply p{margin-top:.65rem;font-style:italic;font-size:1rem;color:var(--text-soft)}@container ps (min-width: 900px){.ps-cover{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:auto 1fr;align-items:center;min-height:min(100svh,62rem);padding-bottom:4rem}.ps-bar{grid-column:1/-1;width:100%}.ps-cover-scene{position:static;padding:1rem 0 0 6cqw}.ps-cover-text{padding-top:0}.ps-cover-sea{top:6%;bottom:auto;height:54%}.ps-cover-print{z-index:1;width:min(28cqw,26rem)}.ps-cover-text{align-self:end;padding:0 5cqw 1rem 3cqw}.ps-cover-names{font-size:calc(clamp(4rem, 8.6cqw, 7.4rem) * var(--script-scale) * var(--name-fit, 1))}}.ps .cd{--cd-size:clamp(2.3rem,10cqw,6.6rem);display:flex;justify-content:center;margin-top:2.2rem}.ps .cd-cell{position:relative;display:flex;flex-direction:column;align-items:center;min-width:3.4rem;padding:0 clamp(.6rem,3.6cqw,2.8rem)}.ps .cd-cell+.cd-cell:before{content:"";position:absolute;left:0;top:12%;height:calc(var(--cd-size) * .8);width:1px;background:var(--hair)}.ps .cd-num{font-family:var(--font-display),serif;font-size:var(--cd-size);line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--accent-ink);overflow:hidden}.ps .cd-label{margin-top:.9rem;font-family:var(--font-display),serif;font-size:.76rem;letter-spacing:.26em;text-transform:uppercase;color:var(--text-soft)}.ps .cd-done{font-size:calc(3rem * var(--script-scale));color:var(--accent-ink);margin-top:1.2rem}.ps-roll{display:inline-block}.ps-note{max-width:40rem;rotate:-.6deg}.ps-note .ps-head{margin-bottom:1.6rem}.ps-note .ps-lead{max-width:none;text-align:left;font-family:var(--font-body),serif;font-style:italic;font-size:clamp(1.2rem,4.2cqw,1.5rem);line-height:1.6}.ps-note-sign{margin-top:1.4rem;text-align:right;font-size:calc(clamp(2.2rem, 8cqw, 3rem) * var(--script-scale) * var(--name-fit, 1));line-height:1.2;color:var(--accent-ink)}.ps-story{display:grid;gap:3.2rem;align-items:center}.ps-story-photo-wrap{position:relative;width:min(100% - 2rem,25rem);margin:0 auto;padding:.7rem;background:var(--card) var(--tex-cotton) 0 0 /300px;background-blend-mode:soft-light;rotate:1.6deg;box-shadow:0 1px 2px rgb(var(--shadow)/.16),0 22px 36px -16px rgb(var(--shadow)/.4)}.ps-story-photo{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--raised)}.ps-story-text .ps-head{margin-bottom:1.6rem}@container ps (min-width: 760px){.ps-story.has-photo{grid-template-columns:1fr 1.1fr;gap:5.5rem;text-align:left}.ps-story.has-photo .ps-stroke{margin-left:0}}.ps-date-line{font-family:var(--font-body),serif;font-style:italic;font-size:1.2rem;color:var(--text-soft);margin:-1rem 0 0}.ps-sea{position:relative;padding:clamp(3.2rem,9cqw,5.4rem) 0;margin-top:1.2rem}.ps-sea:before{content:"";position:absolute;inset:-2rem calc(50% - 50cqw);background:var(--pigment);-webkit-mask:var(--wash-band) 30% center /cover no-repeat;mask:var(--wash-band) 30% center /cover no-repeat}.ps-events{position:relative;display:grid;grid-template-columns:1fr;gap:1rem;max-width:50rem;margin:0 auto}.ps-event{padding:2.6rem 1.6rem 2.4rem}@container ps (min-width: 640px){.ps-events{grid-template-columns:repeat(2,1fr);gap:1.4rem}.ps-events[data-count="1"]{grid-template-columns:1fr;max-width:28rem}.ps-events[data-count="3"] .ps-event:nth-child(3){grid-column:1/-1}}@container ps (min-width: 940px){.ps-events[data-count="3"]{grid-template-columns:repeat(3,1fr);max-width:66rem}.ps-events[data-count="3"] .ps-event:nth-child(3){grid-column:auto}}.ps-event-when{display:flex;flex-direction:column;align-items:center;font-family:var(--font-display),serif;font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;line-height:1.5;margin-bottom:1rem;color:var(--accent-ink)}.ps-event-when>:first-child{padding-left:.3em}.ps-event-when>:last-child{order:-1;margin-bottom:.55rem;font-size:clamp(2.8rem,10cqw,4rem);line-height:1;letter-spacing:-.02em;color:var(--text)}.ps-event-dot{display:none}.ps-event-place{font-family:var(--font-display),serif;font-weight:400;font-size:clamp(1.45rem,5.2cqw,1.8rem);line-height:1.25;text-wrap:balance}.ps-event-address{color:var(--text-soft);font-size:1.02rem;margin:.4rem 0 1.1rem}@container ps (max-width: 639px){.ps-sea{padding-inline:1.1rem}}.ps-sea .ps-center{position:relative;margin-top:1.2rem}.ps-cal{margin-top:2.4rem}.ps-cal>span{display:block;font-family:var(--font-body),serif;font-style:italic;font-size:1.02rem;color:var(--text-soft);margin-bottom:.9rem}.ps-cal>div{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center}.ps-prog{list-style:none;margin:0 auto;padding:0;max-width:26rem;text-align:left}.ps-prog li{position:relative;display:grid;grid-template-columns:6.2rem 1fr;gap:1rem;align-items:baseline;padding:.95rem 0;border-bottom:1px solid var(--hair)}.ps-prog li:last-child{border-bottom:0}.ps-prog-time{font-family:var(--font-display),serif;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--accent-ink);white-space:nowrap}.ps-prog-title{font-family:var(--font-body),serif;font-style:italic;font-size:1.2rem;line-height:1.35}.ps-prog li>.ed-remove{right:-1.6rem}@container ps (max-width: 380px){.ps-prog li{grid-template-columns:1fr;gap:.1rem}}.ps-stays{display:grid;gap:1.2rem;max-width:46rem;margin:2.6rem auto 0}@container ps (min-width: 640px){.ps-stays{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.4rem}}.ps-stays[data-count="1"]{max-width:24rem}.ps-stay{display:flex;flex-direction:column;align-items:center;padding:2.6rem 1.6rem 2.2rem;text-wrap:balance}.ps-stay .ps-event-address{font-style:italic;margin-bottom:.6rem}@container ps (min-width: 900px){.ps-travel .ps-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);column-gap:4.5rem;align-items:center;max-width:66rem;text-align:left}.ps-travel .ps-lead,.ps-travel .ps-narrow-inner{margin:0}.ps-travel .ps-stays{grid-template-columns:1fr;margin:0;max-width:none}.ps-travel .ps-inner>.ps-center{grid-column:2}}.ps-block.ps-attire{--text:var(--card);--text-soft:color-mix(in srgb,var(--card) 84%,var(--accent-ink));overflow:hidden;background-color:var(--accent-ink);color:var(--text)}.ps-attire-sea{position:absolute;inset:0 calc(50% - 50cqw);-webkit-mask-position:50% 15%;mask-position:50% 15%;background:color-mix(in srgb,var(--accent) 70%,var(--card));opacity:.16}.ps-attire .ps-inner{max-width:52rem}.ps-block.ps-attire>.ps-inner{position:static}.ps-attire .ps-attire-code,.ps-attire .ps-attire-code~*{position:relative}@container ps (min-width: 760px){.ps-attire.ps-narrow .ps-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:4rem;align-items:center;max-width:62rem;text-align:left}.ps-attire .ps-attire-code{margin-bottom:0}.ps-attire .ps-stroke{margin-left:0}.ps-attire .ps-lead{margin:0}}.ps-attire .ps-code{color:var(--card)}.ps-attire .ps-stroke{background:var(--card);opacity:.7}.ps-attire ::selection{background:var(--card);color:var(--accent-ink)}.ps-attire-code{margin-bottom:1.8rem}.ps-code{font-family:var(--font-display),serif;font-size:clamp(2rem,8.4cqw,4.2rem);font-weight:400;letter-spacing:.14em;padding-left:.14em;text-transform:uppercase;line-height:1.2;color:var(--accent-ink);text-wrap:balance}.ps-attire-stroke{width:clamp(8rem,30cqw,13rem);height:clamp(1rem,3cqw,1.4rem)}.ps-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem .8rem}.ps-gallery-item{aspect-ratio:4/5;overflow:hidden;border:clamp(.4rem,1.6cqw,.65rem) solid var(--card);background:var(--raised);box-shadow:0 1px 2px rgb(var(--shadow)/.14),0 16px 26px -14px rgb(var(--shadow)/.4);rotate:-1.2deg}.ps-gallery>:nth-child(3n+2){rotate:1.4deg}.ps-gallery>:nth-child(3n){rotate:-.4deg}.ps-gallery[data-count="1"]{grid-template-columns:1fr;max-width:24rem;margin-inline:auto}@container ps (min-width: 760px){.ps-gallery{grid-template-columns:repeat(3,1fr);gap:2rem 1.8rem}.ps-gallery[data-count="2"],.ps-gallery[data-count="4"]{grid-template-columns:repeat(2,1fr);max-width:44rem;margin-inline:auto}}.ps-block.ps-painted{padding-block:clamp(4rem,12cqw,7rem)}.ps-painted-sea{--wash:var(--wash-band);position:absolute;inset:12% calc(50% - 50cqw);scale:-1 1;-webkit-mask-position:70% center;mask-position:70% center}.ps-reply{z-index:1;max-width:34rem}.ps-faq-block .ps-inner{max-width:38rem}.ps-faq{text-align:left;margin:0}@container ps (min-width: 860px){.ps-faq-block .ps-inner{max-width:58rem}.ps-faq-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:3rem;align-items:baseline;padding:1.9rem 0}.ps-faq-q{margin-bottom:0;font-size:1.45rem}}.ps-faq-item{position:relative;padding:1.5rem 0;border-bottom:1px solid var(--hair)}.ps-faq-item:first-child{border-top:1px solid var(--hair)}.ps-faq-q{font-family:var(--font-display),serif;font-size:1.28rem;line-height:1.35;margin-bottom:.4rem}.ps-faq-a{color:var(--text-soft);font-size:1.05rem}.ps-enclosure{max-width:30rem;rotate:.6deg}.ps-gift-btn,.ps-gift-edit{margin-top:2.2rem}.ps-gift-edit{display:flex;flex-direction:column;align-items:center;gap:.5rem}.ps .rsvp{margin-top:2.2rem;text-align:left;display:grid;gap:1.3rem}.ps .rsvp-field{display:grid;gap:.3rem}.ps .rsvp-person{display:grid;gap:.9rem;padding-left:1rem;border-left:1px solid var(--hair)}.ps .rsvp-choice legend,.ps .rsvp-field>span{font-family:var(--font-display),serif;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}.ps .rsvp-field input,.ps .rsvp-field select,.ps .rsvp-field textarea{font:inherit;font-size:1.08rem;color:var(--text);background:transparent;border:0;border-bottom:1px solid color-mix(in srgb,var(--text) 26%,transparent);border-radius:0;padding:.55rem .1rem;width:100%;outline:none;transition:border-color .25s,box-shadow .25s}.ps .rsvp-field textarea{border:1px solid color-mix(in srgb,var(--text) 20%,transparent);border-radius:4px;padding:.65rem .75rem;min-height:5.5rem}.ps .rsvp-field input:focus,.ps .rsvp-field select:focus,.ps .rsvp-field textarea:focus{border-color:var(--accent-ink);box-shadow:0 1px 0 var(--accent-ink)}.ps .rsvp-choice{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.ps .rsvp-choice legend{margin-bottom:.5rem}@container ps (max-width: 440px){.ps .rsvp-choice{grid-template-columns:1fr}}.ps .rsvp-choice button{font-family:var(--font-body),serif;font-style:italic;font-size:1.05rem;padding:.9rem .5rem;border:1px solid color-mix(in srgb,var(--text) 22%,transparent);border-radius:2px;background:transparent;color:var(--text);cursor:pointer;transition:background .25s,color .25s,border-color .25s}.ps .rsvp-choice button:hover{border-color:var(--accent-ink)}.ps .rsvp-choice button[aria-pressed=true]{border-color:var(--accent-ink);background:var(--accent-ink);color:var(--card)}.ps .rsvp-choice button:focus-visible,.ps .rsvp-submit:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.ps .rsvp-submit{margin-top:.7rem;padding:1.1rem;border:0;border-radius:2px;background:var(--accent-ink);color:var(--card);font-family:var(--font-display),serif;font-size:.76rem;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;transition:background .3s}.ps .rsvp-submit:hover:not(:disabled){background:color-mix(in srgb,var(--accent-ink) 82%,var(--text))}.ps .rsvp-submit:disabled{opacity:.6;cursor:default}.ps .rsvp-note{text-align:center;font-size:.98rem;font-style:italic;color:var(--text-soft)}.ps .rsvp-error{color:#9b2c2c;font-size:1rem}.ps .rsvp-done{margin-top:1.8rem}.ps .rsvp-done-title{font-size:calc(2.8rem * var(--script-scale));color:var(--accent-ink);outline:none}.ps .rsvp-done-echo{margin-top:1rem;font-style:italic;color:var(--text-soft)}.ps .rsvp-done-cal{display:inline-block;margin-top:1.2rem;padding:.75rem .4rem;font-family:var(--font-display),serif;font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent-ink) 40%,transparent);text-underline-offset:7px}.ps .rsvp-done-cal:focus-visible{outline:1px solid var(--accent-ink);outline-offset:3px}.ps-footer{position:relative;padding:0 1.5rem 2.6rem;text-align:center}.ps-footer-sea{aspect-ratio:3.1;-webkit-mask-size:100% 100%;mask-size:100% 100%;scale:1 -1;margin:0 -1.5rem clamp(2.4rem,7cqw,3.6rem)}.ps-footer-mono{width:clamp(9rem,34cqw,12rem);margin:0 auto 1.6rem;translate:12% 0;rotate:-6deg}.ps-footer-text{font-family:var(--font-body),serif;font-style:italic;font-size:1.22rem;color:var(--text-soft)}.ps-footer-names{display:inline-block;font-size:calc(clamp(3rem, 13cqw, 5.6rem) * var(--script-scale) * var(--name-fit, 1));line-height:1.3;padding:.1em .4em;margin-top:.2rem}.ps-footer-date{font-size:.8rem;letter-spacing:.32em;margin:.4rem 0 3.2rem}.ps-credit,.ps-footer-date{font-family:var(--font-display),serif;color:var(--text-soft)}.ps-credit{display:inline-block;padding:.75rem .4rem;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none}.ps-env-screen{--ground:var(--raised);position:fixed;inset:0;z-index:50;container-type:inline-size;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.6rem 1.25rem 1.8rem;text-align:center;color:var(--text);background:var(--raised) var(--tex-cotton) 0 0 /320px;background-blend-mode:soft-light;overflow:hidden;transition:opacity 1s cubic-bezier(.4,0,.2,1),visibility 1s}.ps-env-sea{position:absolute;left:-2%;right:-2%;top:50%;height:clamp(21rem,112cqw,26rem);translate:0 -63%}@container (min-width: 700px){.ps-env-sea{translate:0 -50%}}.ps-env-foot,.ps-env-stage{position:relative;z-index:1}.ps-env-screen.is-inline{position:relative;inset:auto;z-index:auto;min-height:780px;border-bottom:1px solid var(--hair)}.ps-env-screen.is-leaving{opacity:0;visibility:hidden}.ps-env-stage{width:min(78cqw,30rem,52svh)}.ps-env-intro{width:100%;aspect-ratio:100/52;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:1.6rem;transition:opacity .35s ease,translate .35s ease}.ps-env-screen.is-open .ps-env-intro{opacity:0;translate:0 -10px;pointer-events:none}.ps-env-names{font-size:calc(clamp(2.6rem, 12.5cqw, 4.4rem) * var(--script-scale) * var(--name-fit, 1));line-height:1.15;padding:0 .3em}.ps-env-kicker{font-family:var(--font-body),serif;font-style:italic;font-size:clamp(1rem,4cqw,1.15rem);color:var(--text-soft);margin-top:.6rem;text-wrap:balance}.ps-env{position:relative;display:block;width:100%;aspect-ratio:1.42;border:0;padding:0;background:none;cursor:pointer;perspective:1600px;filter:drop-shadow(0 1px 1px rgb(var(--shadow)/.22)) drop-shadow(0 24px 26px rgb(var(--shadow)/.28));transition:translate .4s ease}.ps-env:hover{translate:0 -3px}.ps-env:focus-visible{outline:1px solid var(--accent-ink);outline-offset:10px}.ps-env>span{position:absolute;display:block}.ps-env-back{inset:0;border-radius:2px;overflow:hidden;background:var(--envelope-shade)}.ps-liner{position:absolute;inset:3% 3% 12%;background:var(--card)}.ps-liner:after{content:"";position:absolute;inset:0;background:var(--pigment);-webkit-mask:var(--wash-sea) center 80% /cover no-repeat;mask:var(--wash-sea) center 80% /cover no-repeat}.ps-env-card{left:7%;right:7%;top:5%;height:91%;z-index:2;display:flex!important;flex-direction:column;align-items:center;padding:9% 7% 0;color:var(--text);border-radius:2px;background:var(--card) var(--tex-cotton) 0 0 /260px;background-blend-mode:soft-light;box-shadow:inset 0 0 0 .45rem var(--card),inset 0 0 0 calc(.45rem + 1px) color-mix(in srgb,var(--accent) 40%,transparent),0 1px 2px rgb(var(--shadow)/.14);transition:transform 1.15s cubic-bezier(.22,.8,.24,1) .9s}.ps-env-card-names{font-size:calc(clamp(1.9rem, 9.4cqw, 3.1rem) * var(--script-scale) * var(--name-fit, 1));line-height:1.15;max-width:100%;text-wrap:balance}.ps-env-card-words{margin-top:.4em;font-family:var(--font-body),serif;font-style:italic;font-size:clamp(.72rem,3cqw,.98rem);color:var(--text-soft);max-width:80%;line-height:1.35;text-wrap:balance}.ps-env-card-date{max-width:86%;text-wrap:balance;line-height:1.6;margin-top:.5rem;padding-left:.18em;font-family:var(--font-display),serif;font-size:clamp(.72rem,2.5cqw,.84rem);letter-spacing:.12em;text-transform:uppercase}.ps-env-card-city{margin-top:.15rem;font-family:var(--font-body),serif;font-style:italic;font-size:clamp(.72rem,2.8cqw,.95rem);color:var(--accent-ink)}.ps-env-pocket{inset:0;z-index:3;border-radius:2px;display:flex!important;align-items:flex-end;justify-content:center;padding-bottom:8%;background:var(--tex-laid) 0 0 /240px,linear-gradient(to bottom,var(--envelope) 40%,color-mix(in srgb,var(--envelope) 95%,var(--envelope-shade)));background-blend-mode:soft-light,normal;clip-path:polygon(0 3.5%,46% 44.6%,50% 46.4%,54% 44.6%,100% 3.5%,100% 100%,0 100%)}.ps-env-pocket:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top right,transparent calc(50% - .6px),rgb(var(--shadow)/.1) 50%,transparent calc(50% + .6px)) 0 100% /50% 64% no-repeat,linear-gradient(to top left,transparent calc(50% - .6px),rgb(var(--shadow)/.1) 50%,transparent calc(50% + .6px)) 100% 100% /50% 64% no-repeat,linear-gradient(160deg,rgb(255 255 255/.45),rgb(255 255 255/0) 45%,rgb(var(--shadow)/.05))}.ps-env-to{position:relative;z-index:1;font-size:calc(clamp(1.2rem, 5cqw, 1.8rem) * var(--script-scale));color:var(--accent-ink)}.ps-env-flap{left:0;right:0;top:0;height:48%;z-index:4;transform-origin:top center;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.45,0,.25,1) .3s,z-index 0s linear .7s}.ps-env-flap>span{position:absolute;inset:0;display:block;backface-visibility:hidden}.ps-env-flap-out{filter:drop-shadow(0 1.5px 1.5px rgb(var(--shadow)/.2))}.ps-env-flap-in{transform:rotateY(180deg)}.ps-flap-svg{display:block;width:100%;height:100%;overflow:visible}.ps-flap-liner,.ps-flap-liner>span{position:absolute;display:block;clip-path:polygon(0 0,100% 0,100% 7.3%,53.9% 92.9%,50% 96.5%,46.1% 92.9%,0 7.3%)}.ps-flap-liner{inset:0;background:var(--envelope)}.ps-flap-liner>span{inset:3% 2.5% 9%;background:var(--pigment);-webkit-mask:var(--wash-sea) 50% 20% /cover no-repeat;mask:var(--wash-sea) 50% 20% /cover no-repeat}.ps-env .ps-env-seal{left:50%;top:45%;z-index:5;width:17%;translate:-50% -50%;transition:opacity .45s ease .1s,translate .6s cubic-bezier(.2,.7,.2,1),scale .4s ease}.ps-env .ps-env-stamp{right:5%;top:6%;z-index:6;width:14%;rotate:4deg;transition:opacity .45s ease .1s}.ps-env .ps-env-postmark{position:absolute;right:8%;top:9%;z-index:7;width:30%;rotate:-8deg;opacity:.85;mix-blend-mode:multiply;pointer-events:none;transition:opacity .45s ease .1s}.ps-env-screen.is-open :is(.ps-env-stamp,.ps-env-postmark){opacity:0}.ps-env:hover .ps-env-seal{scale:1.05}.ps-env-screen.is-open .ps-env-seal{opacity:0;translate:-50% -130%;scale:1.1}.ps-env-screen.is-open .ps-env-flap{transform:rotateX(180deg);z-index:1}.ps-env-screen.is-open .ps-env-card{transform:translateY(-96%)}@container (max-width: 600px){.ps-env-card-words{display:none}.ps-env-card-date{margin-top:.7rem}}.ps-env-screen.is-open .ps-env:hover{translate:none}.ps-env-foot{margin-top:clamp(2.5rem,9cqw,2.8rem);display:flex;flex-direction:column;align-items:center;transition:opacity .45s ease}.ps-env-screen.is-leaving .ps-env-foot{opacity:0}.ps-env-code{padding-left:.3em;font-family:var(--font-display),serif;font-size:clamp(.82rem,3.3cqw,.98rem);letter-spacing:.3em;text-transform:uppercase;color:var(--text)}.ps-env-venue{margin-top:.45rem;font-family:var(--font-body),serif;font-style:italic;font-size:clamp(1.1rem,4.6cqw,1.4rem);color:var(--text-soft)}.ps-env-rule{margin:1rem auto 1.5rem}.ps-env-hint{margin-top:1.8rem;font-family:var(--font-display),serif;font-size:.8rem;letter-spacing:.3em;text-transform:uppercase;color:var(--text-soft);animation:ps-breathe 2.8s ease-in-out infinite;transition:opacity .3s}.ps-env-screen.is-open .ps-env-hint{opacity:0;animation:none}.ps-env-screen .ps-top-rsvp{position:absolute;z-index:2;top:.5rem;right:.9rem}.ps .music-btn{position:fixed;right:1rem;bottom:1rem;z-index:40;width:3rem;height:3rem;border-radius:50%;border:1px solid var(--accent);background:color-mix(in srgb,var(--bg) 85%,transparent);color:var(--accent-ink);display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 6px 18px rgb(var(--shadow)/.16)}.ps-sample{position:absolute;z-index:5;left:.8rem;top:.8rem;padding:.35rem .6rem;border-radius:6px;background:rgb(17 24 39/.82);color:#fff;font:500 12px/1.2 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:0;text-transform:none;pointer-events:none}.ps-sample-cover{left:50%;top:38%;translate:-50% 0;white-space:nowrap}.ps-sample-inline{position:static;display:inline-block;margin:-1rem 0 1.4rem}.ps :is(.ps-card,.ps-event,.ps-stay,.ps-print-frame,.ps-story-photo-wrap,.ps-gallery-item){isolation:isolate;background:none;box-shadow:none;filter:drop-shadow(0 1px 1px rgb(var(--shadow)/.16)) drop-shadow(0 16px 18px rgb(var(--shadow)/.2))}.ps :is(.ps-card,.ps-event,.ps-stay,.ps-print-frame,.ps-story-photo-wrap,.ps-gallery-item):before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--card) var(--tex-cotton) 0 0 /300px;background-blend-mode:soft-light;-webkit-mask-box-image:url(/templates/pearl-shore/deckle.webp) 36/12px stretch;mask-border:url(/templates/pearl-shore/deckle.webp) 36 fill/12px stretch}.ps :is(.ps-card,.ps-event,.ps-stay):before{box-shadow:inset 0 0 0 .75rem var(--card),inset 0 0 0 calc(.75rem + 1px) color-mix(in srgb,var(--accent) 38%,transparent)}.ps .ps-gallery-item{position:relative;border:0;padding:clamp(.45rem,1.6cqw,.7rem)}.ps-env-screen:not(.is-inline) .ps-env-sea{animation:ps-bleed 1.8s cubic-bezier(.22,1,.36,1) both}.ps-env-screen:not(.is-inline) .ps-env-intro>*{animation:ps-rise 1.1s cubic-bezier(.16,1,.3,1) .2s both}.ps-env-screen:not(.is-inline) .ps-env-intro>:nth-child(2){animation-delay:.38s}.ps-env-screen:not(.is-inline) .ps-env{animation:ps-deliver 1.3s cubic-bezier(.16,1,.3,1) .45s both}.ps-env-screen:not(.is-inline) .ps-env-seal{animation:ps-seal-set .8s cubic-bezier(.16,1,.3,1) 1.25s both}.ps-env-screen:not(.is-inline) .ps-env-foot{animation:ps-fade 1s ease-out 1.05s both}.ps-env-stage{transition:transform 1s cubic-bezier(.33,0,.2,1)}.ps-env-screen.is-leaving .ps-env-stage{transform:translateY(-1.5%) scale(1.04)}.ps-motion .ps-cover-photo img{transform:translate3d(0,var(--cover-shift,0),0) scale(1.06)}.ps[data-cover=await] .ps-cover-sea{clip-path:inset(0 100% 0 0)}.ps[data-cover=await] :is(.ps-cover-print,.ps-cover-names,.ps-cover-date,.ps-cover-venue,.ps-cover-reply,.ps-bar){opacity:0}.ps[data-cover=play] .ps-cover-sea{animation:ps-paint 1.9s cubic-bezier(.65,0,.25,1) both}.ps[data-cover=play] .ps-cover-print{animation:ps-lay 1.4s cubic-bezier(.16,1,.3,1) .6s both}.ps[data-cover=play] .ps-cover-postmark{animation:ps-stamp .55s cubic-bezier(.5,0,.75,0) 1.7s both}.ps[data-cover=play] .ps-cover-names{animation:ps-write 1.8s cubic-bezier(.55,0,.3,1) 1.1s both}.ps[data-cover=play] .ps-cover-date{animation:ps-spacing 1.6s cubic-bezier(.16,1,.3,1) 2s both}.ps[data-cover=play] .ps-cover-venue{animation:ps-rise 1.1s cubic-bezier(.16,1,.3,1) 2.25s both}.ps[data-cover=play] :is(.ps-cover-reply,.ps-bar){animation:ps-fade 1.2s ease-out 2.5s both}.ps-motion .ps-roll{animation:ps-roll .55s cubic-bezier(.16,1,.3,1)}.ps-motion [data-reveal=head]:not([data-inview]) :is(.ps-title,.ps-code){opacity:0;translate:0 .5em}.ps-motion [data-reveal=head] :is(.ps-title,.ps-code){transition:opacity 1s ease,translate 1.1s cubic-bezier(.16,1,.3,1)}.ps-motion :is([data-reveal=head],[data-reveal=attire]):not([data-inview]) .ps-stroke{clip-path:inset(0 100% 0 0)}.ps-motion :is([data-reveal=head],[data-reveal=attire]) .ps-stroke{transition:clip-path 1.2s cubic-bezier(.65,0,.35,1) .35s}.ps-motion [data-reveal=attire]:not([data-inview]) .ps-code{opacity:0;letter-spacing:.4em}.ps-motion [data-reveal=attire] .ps-code{transition:opacity 1.1s ease,letter-spacing 1.6s cubic-bezier(.16,1,.3,1)}.ps-motion [data-reveal=fade]:not([data-inview]){opacity:0;translate:0 14px}.ps-motion [data-reveal=fade]{transition:opacity 1s ease .15s,translate 1.1s cubic-bezier(.16,1,.3,1) .15s}.ps-motion :is([data-reveal=list],[data-reveal=develop]):not([data-inview])>*{opacity:0;translate:0 22px}.ps-motion :is([data-reveal=list],[data-reveal=develop])>*{transition:opacity .9s ease,translate 1.1s cubic-bezier(.16,1,.3,1)}.ps-motion :is([data-reveal=list],[data-reveal=develop])>:nth-child(2){transition-delay:.12s}.ps-motion :is([data-reveal=list],[data-reveal=develop])>:nth-child(3){transition-delay:.24s}.ps-motion :is([data-reveal=list],[data-reveal=develop])>:nth-child(4){transition-delay:.36s}.ps-motion :is([data-reveal=list],[data-reveal=develop])>:nth-child(n+5){transition-delay:.48s}.ps-motion [data-reveal=card]:not([data-inview]){opacity:0;translate:0 40px}.ps-motion [data-reveal=card]{transition:opacity 1s ease,translate 1.3s cubic-bezier(.16,1,.3,1)}.ps-motion [data-reveal=photo]:not([data-inview]){opacity:0;translate:0 30px;rotate:-3deg}.ps-motion [data-reveal=photo]{transition:opacity 1s ease,translate 1.3s cubic-bezier(.16,1,.3,1),rotate 1.4s cubic-bezier(.16,1,.3,1)}.ps-motion .ps-footer-sea,.ps-motion .ps-painted-sea,.ps-motion .ps-sea:before{transition:clip-path 1.8s cubic-bezier(.65,0,.25,1)}.ps-motion .ps-painted:not(:has([data-inview])) .ps-painted-sea,.ps-motion .ps-sea:not(:has([data-inview])):before,.ps-motion [data-reveal=footer]:not([data-inview]) .ps-footer-sea{clip-path:inset(0 100% 0 0)}.ps-motion [data-reveal=footer]:not([data-inview]) :is(.ps-footer-mono,.ps-footer-text,.ps-footer-names,.ps-footer-date){opacity:0;translate:0 12px}.ps-motion [data-reveal=footer] :is(.ps-footer-mono,.ps-footer-text,.ps-footer-names,.ps-footer-date){transition:opacity 1s ease,translate 1.1s cubic-bezier(.16,1,.3,1)}.ps-motion [data-reveal=footer] .ps-footer-mono{transition-delay:.6s}.ps-motion [data-reveal=footer] .ps-footer-text{transition-delay:.8s}.ps-motion [data-reveal=footer] .ps-footer-names{transition-delay:1s}.ps-motion [data-reveal=footer] .ps-footer-date{transition-delay:1.2s}@media (hover:hover){.ps-gallery-item img,.ps-story-photo img{transition:transform 1.4s cubic-bezier(.16,1,.3,1)}.ps-gallery-item:hover img,.ps-story-photo:hover img{transform:scale(1.04)}}@keyframes ps-breathe{50%{opacity:.8}}@keyframes ps-rise{0%{opacity:0;translate:0 14px}}@keyframes ps-fade{0%{opacity:0}}@keyframes ps-bleed{0%{clip-path:inset(0 50% 0 50%);opacity:.4}to{clip-path:inset(0 0 0 0);opacity:1}}@keyframes ps-paint{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes ps-deliver{0%{opacity:0;transform:translateY(34px) rotate(-2.5deg) scale(.96)}}@keyframes ps-seal-set{0%{opacity:0;scale:1.5}}@keyframes ps-lay{0%{opacity:0;transform:translateY(28px) rotate(-4deg) scale(1.03)}}@keyframes ps-stamp{0%{opacity:0;scale:1.35}}@keyframes ps-write{0%{clip-path:inset(-60% 100% -60% -20%);opacity:.4}to{clip-path:inset(-60% -20% -60% -20%);opacity:1}}@keyframes ps-spacing{0%{opacity:0;letter-spacing:.6em}}@keyframes ps-roll{0%{transform:translateY(60%);opacity:0}}