@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-normal-BCNrxLz_.woff2)format("woff2"),url(/assets/eb-garamond-latin-400-normal-maQnHeKB.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-italic-DSEbMgZu.woff2)format("woff2"),url(/assets/eb-garamond-latin-400-italic-CDFyLPXJ.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-latin-500-normal-DehAIUv0.woff2)format("woff2"),url(/assets/eb-garamond-latin-500-normal-DZU8xF9o.woff)format("woff")}@font-face{font-family:Pinyon Script;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pinyon-script-latin-400-normal-HCoaxbyT.woff2)format("woff2"),url(/assets/pinyon-script-latin-400-normal-3W0BoeAr.woff)format("woff")}:root{--font-text:"EB Garamond",Georgia,"Times New Roman",serif;--font-script:"Pinyon Script","Palatino Linotype",Palatino,serif;--stage:#200a12;--wine:#491524;--wine-deep:#2d0c18;--gold:#d3ad61;--muted-gold:#a58349;--ivory:#fff0d9;--muted:#dbc4b7;color:var(--ivory);background:var(--stage);font-family:var(--font-text);font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:280px;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--ivory);outline-offset:6px}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}button[hidden]{display:none!important}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stage{touch-action:pan-y;background:radial-gradient(at 50% 44%,#3b1420 0%,#280c17 45%,#19080e 100%);height:100svh;min-height:320px;position:relative;overflow:hidden}.stage:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 160px #10040945}.live-scene{opacity:0;pointer-events:none;transition:opacity .18s;position:absolute;inset:0}.stage.ready .live-scene{opacity:1}.poster{pointer-events:none;opacity:1;justify-content:center;align-items:center;transition:opacity .18s;display:flex;position:absolute;inset:0}.poster img{object-fit:contain;width:74%;max-width:95svh;height:auto}.stage.ready .poster{opacity:0}.object-target{z-index:2;touch-action:pan-y;cursor:grab;color:#0000;background:0 0;border:0;border-radius:50%;width:78%;max-width:100svh;height:30%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.object-target:active{cursor:grabbing}.object-target:focus-visible{outline:1px solid var(--gold);outline-offset:16px}.focus-control{opacity:0;pointer-events:none;position:absolute}.focus-control:focus-visible{opacity:1;pointer-events:auto}.skip-to-details{z-index:20;background:var(--wine-deep);border:1px solid var(--muted-gold);padding:14px 20px;text-decoration:none;top:24px;left:24px}.stage.ready .object-target[aria-disabled=true]{cursor:default}main{display:block}.js main{display:none}body.opening main,body.reading main{display:block}body.opening main{width:100%;opacity:var(--handoff,0);pointer-events:none;position:absolute;top:0;left:0}body.opening{height:100svh;overflow:hidden}body.opening .live-scene{opacity:calc(1 - var(--handoff,0));transition:none}body.opening .poster,body.reading .stage{display:none}.invitation{isolation:isolate;width:min(580px,100% - 64px);margin:60px auto 80px;position:relative;box-shadow:0 20px 100px #1202084d}.woven-sheet{background-color:var(--wine);background-image:repeating-linear-gradient(0deg,#ffffff03 0 1px,#0000 1px 3px),repeating-linear-gradient(90deg,#00000008 0 1px,#0000 1px 3px);border:1px solid #b38c526b;padding:0 25px;position:relative}.woven-sheet:before,.woven-sheet:after{content:"";pointer-events:none;z-index:0;border:1px solid #b38c5270;position:absolute;inset:15px}.invitation-cover{text-align:center;flex-direction:column;align-items:center;min-height:calc(100svh - 120px);padding:64px 20px 30px;display:flex;position:relative}.eyebrow{font:9px/1.8 var(--font-text);letter-spacing:.24em;color:var(--gold);margin:0}.arch{pointer-events:none;border:1px solid #b38c524d;border-radius:50% 50% 0 0/17% 17% 0 0;position:absolute;inset:35px 20px 24px}.flourish{fill:none;width:122px;height:34px;stroke:var(--gold);stroke-width:.9px;flex-shrink:0;margin:23px auto 12px}h1,h2,h3{font-family:var(--font-text);font-weight:400}h1{color:var(--ivory);letter-spacing:-.035em;outline:none;flex-direction:column;align-items:center;margin:0;font-size:clamp(56px,6vw,79px);line-height:.9;display:flex}h1 em{color:var(--gold);margin:7px 0 3px;font-size:42px;font-weight:400;line-height:1.04}h1:focus-visible{outline:1px solid var(--gold);outline-offset:12px}.family-names{font:9px var(--font-text);letter-spacing:.2em;color:var(--gold);margin:24px 0 0}.family-names span{font-family:var(--font-text);margin:0 10px;font-style:italic}.date-seal{color:var(--gold);align-items:center;gap:18px;margin-top:34px;display:flex}.date-seal span{font:9px var(--font-text);letter-spacing:.2em;text-align:center;min-width:73px}.date-seal strong{font:46px/.9 var(--font-text);color:var(--ivory);border-left:1px solid #b38c5260;border-right:1px solid #b38c5260;padding:0 20px;font-weight:400}.wedding-day{color:var(--muted);margin:15px 0 0;font-size:13px}.cover-venue{font:24px var(--font-text);margin:25px 0 0}.cover-venue span{font:12px/1.6 var(--font-text);color:var(--muted);margin-top:3px;display:block}.continue{font:8px var(--font-text);letter-spacing:.2em;color:var(--gold);align-items:center;gap:17px;min-height:44px;margin-top:auto;padding-top:35px;text-decoration:none;display:flex}.continue span{font:20px var(--font-text)}.corner{border:1px solid var(--muted-gold);width:11px;height:11px;position:absolute;transform:rotate(45deg)}.tl{top:13px;left:-9px}.tr{top:13px;right:-9px}.bl{bottom:13px;left:-9px}.br{bottom:13px;right:-9px}.section{text-align:center;padding:75px 27px;scroll-margin-top:95px;position:relative}.section:before{content:"";background:linear-gradient(90deg,#0000,#b38c5270,#0000);width:70%;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}h2{letter-spacing:-.02em;margin:17px 0 20px;font-size:40px;line-height:1.08}.section-intro{color:var(--muted);margin-bottom:38px;font-size:15px;line-height:1.8}.event-grid{text-align:left;grid-template-columns:1fr 1fr;gap:0 30px;display:grid}.event{border-top:1px solid #b38c5240;padding:24px 0 27px;position:relative}.event-number{font:italic 23px var(--font-text);color:var(--gold);margin-bottom:17px;display:block}.event-date{font:8px/1.8 var(--font-text);letter-spacing:.09em;color:var(--gold)}h3{margin:9px 0 10px;font-size:31px}.event>p:not(.event-date){color:var(--muted);font-size:14px;line-height:1.7}.event .event-venue{margin-top:16px;font-style:italic;color:var(--gold)!important;font-size:13px!important}.timezone{font:10px/1.7 var(--font-text);color:var(--muted);margin-top:20px}.venue .flourish{margin:22px auto;display:block}.venue h2{font-size:44px}.venue>p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.8}.venue .venue-note{margin:28px 0;font-size:14px!important}.outline-button{color:var(--gold);font:11px var(--font-text);letter-spacing:.08em;background:0 0;border:1px solid #b38c5260;min-height:44px;padding:15px 24px}.closing{padding-bottom:65px}.closing>p:first-of-type{color:var(--muted);margin-top:25px;font-size:17px;font-style:italic}.closing h2{font-size:30px;line-height:1.45}.closing h2 i{color:var(--ivory);font-size:45px}.family-attribution{color:var(--muted);margin:27px 0 50px;font-size:14px;line-height:1.8}.sample-label{font:8px var(--font-text);letter-spacing:.18em;color:var(--gold)}.sample-note{color:var(--muted);margin-bottom:28px;font-size:11px;line-height:1.7}.text-button{color:var(--gold);font:10px/1.6 var(--font-text);letter-spacing:.04em;background:0 0;border:0;border-bottom:1px solid #b38c5260;min-height:44px;padding:10px 0}.text-button span{margin-left:10px}.scroll-rail{z-index:6;pointer-events:none;filter:drop-shadow(0 4px 5px #12020880);align-items:center;width:min(668px,100% - 20px);height:22px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.rail-top{top:49px}.rail-bottom{bottom:49px}.scroll-rail span{background:linear-gradient(#210812,#68263a 25%,#4a1125 52%,#240811 85%,#751f39);border-top:1px solid #93513f;flex:1;height:13px;box-shadow:0 1px 1px #0e0208}.scroll-rail i{clip-path:polygon(0 50%,15% 21%,33% 8%,55% 19%,62% 2%,90% 2%,100% 19%,100% 81%,90% 98%,62% 98%,55% 81%,33% 92%,15% 79%);background:linear-gradient(#9d7137,#f5d697 24%,#ba8c43 49%,#ecd19a 65%,#6f4c25 100%);border-radius:70% 25% 25% 70%;flex:0 0 42px;height:21px;position:relative}.scroll-rail i:last-child{transform:scaleX(-1)}.scroll-rail i:after{content:"";right:7px;background:repeating-linear-gradient(90deg,#d2a75f 0,#fff1b1 1px,#725126 2px,#d8ad66 3px);border-radius:3px;width:10px;position:absolute;inset-block:0}@media (min-width:1000px){.invitation-cover{padding-top:65px}.invitation{width:min(580px,100% - 64px)}}@media (max-width:600px){.invitation{width:calc(100% - 40px);margin:38px auto 54px}.woven-sheet{padding:0 17px}.woven-sheet:before{inset:10px}.woven-sheet:after{inset:14px}.invitation-cover{min-height:calc(100svh - 76px);padding:53px 8px 25px}.arch{inset:26px 9px 19px}.eyebrow{letter-spacing:.16em;font-size:7px}.invitation-line{margin:6px 0 20px;font-size:13px}.flourish{width:105px;margin:20px auto 10px}h1{font-size:66px}.family-names{letter-spacing:.16em;margin-top:23px;font-size:7px}.date-seal{gap:10px;margin-top:28px}.date-seal span{min-width:60px;font-size:8px}.date-seal strong{padding:0 14px;font-size:43px}.cover-venue{margin-top:25px;font-size:24px}.continue{padding-top:27px;font-size:7px}.section{padding:58px 15px}h2{font-size:35px}.section-intro{font-size:14px}.event-grid{grid-template-columns:1fr;gap:0}.event{padding:22px 0}.event-number{float:right;margin:0}.event-date{font-size:9px}.event h3{font-size:33px}.event>p:not(.event-date){font-size:15px}.event .event-venue{font-size:14px!important}.venue h2{font-size:39px}.scroll-rail{width:calc(100% - 16px);height:18px}.scroll-rail i{flex-basis:27px;height:18px}.scroll-rail span{height:10px}.rail-top{top:29px}.rail-bottom{bottom:29px}.closing h2 i{font-size:39px}.closing>p:first-of-type{font-size:15px}.corner{width:8px;height:8px}.tl,.bl{left:-7px}.tr,.br{right:-7px}.section{scroll-margin-top:70px}}@media (max-width:350px){h1{font-size:58px}.invitation-cover{padding-top:46px}.eyebrow{font-size:6px}.family-names{margin-top:18px}.date-seal{margin-top:24px}.date-seal span{min-width:49px}.section{padding-inline:9px}.desktop-break{display:none}.cover-venue{font-size:22px}.invitation-line{font-size:12px}}@media (max-height:650px){.scroll-rail{width:calc(100% + 50px);position:relative;top:auto;bottom:auto;left:50%;transform:translate(-50%)}.rail-top{margin-bottom:-11px}.rail-bottom{margin-top:-11px}.invitation{margin-block:28px}.invitation-cover{min-height:690px}.rail-top,.rail-bottom{height:22px}.invitation-cover .continue{margin-top:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.cover-sample{font:7px/1.6 var(--font-text);letter-spacing:.14em;color:#d3ad61b3;margin:23px 0 0}.invitation-cover{isolation:isolate}.invitation-cover:before{content:"";z-index:-1;background:#491524 url(/assets/scroll-skin.webp) 50%/100% 100% no-repeat;position:absolute;inset:-1px -26px 0}.invitation-cover .arch,.invitation-cover .corner{display:none}.woven-sheet:before{top:calc(100svh - 120px);left:3.9%;right:3.9%}.woven-sheet:after{top:calc(100svh - 120px);left:5.08%;right:5.08%}.scroll-rail{filter:drop-shadow(0 4px 5px #12020880);width:min(689.371px,100% - 20px);height:auto;display:block}.scroll-rail img{width:100%;height:auto;display:block}.rail-top{top:60px;transform:translate(-50%,-50%)}.rail-bottom{bottom:60px;transform:translate(-50%,50%)}@media (max-width:600px){.invitation{width:calc(84.1347% - 13.4615px)}.invitation-cover:before{left:-18px;right:-18px}.scroll-rail{width:calc(100% - 16px)}.rail-top{top:38px}.rail-bottom{bottom:38px}.woven-sheet:before,.woven-sheet:after{top:calc(100svh - 76px)}}@media (max-height:650px){.scroll-rail{width:118.857%;position:relative;top:auto;bottom:auto;transform:translate(-50%)}.rail-top{margin-bottom:calc(-3.4% - 1px)}.rail-bottom{margin-top:calc(-3.4% - 1px)}.woven-sheet:before,.woven-sheet:after{top:690px}}body.opening .live-scene{opacity:1}body.zoomed .scroll-rail{width:118.857%;position:relative;top:auto;bottom:auto;transform:translate(-50%)}body.zoomed .rail-top{margin-bottom:calc(-3.4% - 1px)}body.zoomed .rail-bottom{margin-top:calc(-3.4% - 1px)}.invitation{width:min(760px,100% - 36px)}.scroll-rail,body.zoomed .scroll-rail{--rail-height:clamp(22px,4.6vw,40px);width:calc(100% + 24px);height:var(--rail-height);box-sizing:border-box;border-style:solid;border-color:#0000;border-width:0 calc(var(--rail-height) * 1.5625);border-image:url(/assets/rail.webp) 0 150 fill;margin:0;display:block;position:absolute;left:50%}.scroll-rail img{display:none}.rail-top,body.zoomed .rail-top{margin:0;top:0;bottom:auto;transform:translate(-50%,-50%)}.rail-bottom,body.zoomed .rail-bottom{margin:0;top:auto;bottom:0;transform:translate(-50%,50%)}.photo-chapter{padding:64px 26px 48px}.photo-heading h2{margin:15px 0 10px;font-size:clamp(31px,4vw,45px)}.photo-note{font:italic 15px/1.6 var(--font-text);color:var(--muted);margin:0 0 28px}.photo-link{background:#30151b;border:1px solid #d3ad6166;min-width:0;line-height:0;text-decoration:none;display:block;position:relative;overflow:hidden;box-shadow:0 10px 25px #16050b55}.photo-link img{object-fit:cover;width:100%;height:100%;display:block}.photo-link:focus-visible{outline:3px solid var(--ivory);outline-offset:4px;z-index:20!important}.collage-canvas{aspect-ratio:1.26;isolation:isolate;width:100%;position:relative}.collage-hero{z-index:3;width:100%;height:80%;position:absolute;top:10%;left:0;transform:scale(.53)}.collage-small{z-index:4;border:5px solid #f4e6cf;width:29%;height:47%;position:absolute;box-shadow:0 8px 25px #18040b70}.collage-1{top:1%;left:3%;transform:rotate(-4deg)}.collage-2{z-index:2;height:32%;top:7%;right:3%;transform:rotate(3deg)}.collage-3{height:35%;bottom:1%;left:7%;transform:rotate(3deg)}.collage-4{width:33%;height:31%;bottom:3%;right:2%;transform:rotate(-3deg)}.photo-footnote{font:9px/1.8 var(--font-text);letter-spacing:.06em;color:var(--muted);margin:24px 0 0}.our-story{padding:64px 26px}.story-heading h2{margin-bottom:10px;font-size:48px}.story-sequence{gap:50px;display:grid}.story-chapter{min-width:0}.polaroid{color:#491524;background:#f9ecd7;width:min(100%,355px);margin:0 auto;padding:12px 12px 0;transform:rotate(-2deg);box-shadow:0 10px 32px #17040c66}.story-chapter:nth-child(2) .polaroid{transform:rotate(2deg)}.story-chapter:nth-child(3) .polaroid{transform:rotate(-1deg)}.story-card{aspect-ratio:4/4.4;box-shadow:none;border:0}.story-card img{object-position:50% 55%}.polaroid-note{font:italic 21px/1.3 var(--font-text);margin:0;padding:16px 2px 22px}.story-caption{max-width:390px;margin:32px auto 0}.story-caption h3{margin:10px 0;font-size:34px}.story-caption>p:last-child{font:14px/1.85 var(--font-text);color:var(--muted);margin:12px 0 0}.event-photo{aspect-ratio:4/3;margin:0 0 23px}.event-photo img{object-position:50% 50%}.event-number{margin-top:3px}.venue-photo{aspect-ratio:16/10;margin:0 0 38px}.venue .eyebrow{margin-top:14px}#photo-dialog{width:min(1050px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ivory);border:1px solid var(--muted-gold);overscroll-behavior:contain;background:#250e18;padding:20px 24px 16px;overflow:auto;box-shadow:0 25px 100px #0009}#photo-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#10060beb}.viewer-toolbar,.viewer-navigation{justify-content:space-between;align-items:center;gap:16px;display:flex}.viewer-toolbar button,.viewer-navigation button{min-width:70px;min-height:44px;color:var(--ivory);font:12px var(--font-text);background:0 0;border:1px solid #d3ad6155;padding:10px 14px}.viewer-close span{margin-left:10px;font-size:19px}#photo-dialog figure{margin:16px 0}#viewer-image{object-fit:contain;background:#190810;width:100%;max-width:100%;height:min(62dvh,650px);display:block}#viewer-caption{text-align:center;font:italic 22px/1.4 var(--font-text);padding-top:14px}#viewer-count{font:11px var(--font-text);color:var(--gold)}.viewer-note{font:10px/1.7 var(--font-text);text-align:center;color:var(--muted);margin:16px 0 0}html.photo-viewing{overflow:hidden}@media (min-width:900px) and (min-height:700px) and (prefers-reduced-motion:no-preference){.collage-motion{height:calc(min(800px,100svh - 64px) + 95svh);padding-top:0;padding-bottom:0}.collage-motion .collage-sticky{flex-direction:column;justify-content:center;height:min(800px,100svh - 64px);padding:30px 0 22px;display:flex;position:sticky;top:32px}.collage-motion .collage-canvas{aspect-ratio:auto;flex:1;min-height:280px;max-height:520px}.collage-motion .photo-note{margin-bottom:12px}.collage-motion .photo-footnote{margin-top:15px}.story-motion{height:calc(min(800px,100svh - 64px) + 110svh);padding-top:0;padding-bottom:0}.story-motion .story-layout{flex-direction:column;justify-content:center;height:min(800px,100svh - 64px);padding:22px 0;display:flex;position:sticky;top:32px}.story-motion .story-heading h2{margin:8px 0}.story-motion .story-heading .photo-note{margin-bottom:20px}.story-motion .story-sequence{flex:1;min-height:400px;max-height:570px;display:block;position:relative}.story-motion .story-chapter{pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:absolute;inset:0}.story-motion .polaroid{pointer-events:auto;width:clamp(180px,25svh,235px);padding:9px 9px 0;transform:none}.story-motion .polaroid-note{padding:13px 0 17px;font-size:18px}.story-motion .story-caption{max-width:440px;margin:0 auto;display:none;position:absolute;top:calc(1.1*clamp(180px,25svh,235px) + 70px);left:0;right:0}.story-motion .story-chapter[data-active] .story-caption{display:block}.story-motion .story-caption h3{font-size:31px}.story-motion .story-caption>p:last-child{margin-top:8px;font-size:13px}.story-motion .story-chapter:focus-within{z-index:10!important}.story-motion .photo-footnote{margin-top:8px}}@media (max-width:600px){.photo-chapter,.our-story{padding:48px 10px}.photo-heading h2{font-size:32px}.photo-note{margin-bottom:20px;font-size:13px}.photo-footnote{margin-top:20px;font-size:8px}.collage-canvas{aspect-ratio:.95}.collage-small{border-width:3px}.collage-hero{height:65%;top:17.5%;transform:scale(.6)}.collage-1{width:32%;height:39%;top:0;left:1%}.collage-2{width:33%;height:29%;top:6%;right:1%}.collage-3{width:32%;height:32%;bottom:0;left:2%}.collage-4{width:36%;height:28%;bottom:3%;right:0}.story-heading h2{font-size:42px}.story-heading .photo-note{margin-bottom:36px}.polaroid{width:90%;padding:9px 9px 0}.polaroid-note{padding:15px 0 19px;font-size:19px}.story-caption{margin-top:28px}.story-caption h3{font-size:31px}.story-caption>p:last-child{font-size:14px}.event-photo{margin-bottom:22px}.venue-photo{aspect-ratio:4/3}#photo-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:12px}#viewer-image{height:58dvh}.viewer-toolbar .eyebrow{font-size:7px}.viewer-toolbar button,.viewer-navigation button{padding:9px;font-size:11px}.viewer-note{font-size:9px}}[data-plan-off]{display:none!important}:root{--foil:#e4bf7d;--foil-light:#f3dbaa;--foil-shadow:#82512e}body.reading{background:radial-gradient(at 50% 12%,#4a1c2a 0,#240b14 65%,#16080d 100%) fixed}.invitation{filter:drop-shadow(0 14px 32px #0d020966)}.woven-sheet{background-color:#531629;background-image:url(/assets/ornaments/brocade.svg),repeating-linear-gradient(0deg,#fff1d20a 0 .5px,#0000 .5px 3px),repeating-linear-gradient(90deg,#13000918 0 1px,#0000 1px 4px),linear-gradient(100deg,#2d0917 0,#651f35 5%,#4c1427 23%,#591b30 55%,#491225 82%,#6b2339 96%,#2d0917 100%);background-size:142px 170px,3px 3px,4px 4px,100% 100%;border-color:#cba567;box-shadow:inset 0 0 0 5px #350c1c,inset 0 0 0 6px #c69d5c88,inset 0 0 0 9px #771f3b55,inset 8px 0 15px #18040d55,inset -8px 0 15px #18040d55}.woven-sheet:before,.woven-sheet:after{border-color:#d5ad6977;inset:12px}.woven-sheet:after{border-color:#cda36644;inset:17px}.document-trim{pointer-events:none;z-index:2;border-block:1px solid #d5ad69aa;position:absolute;inset:21px 10px}.document-trim:before,.document-trim:after{content:"";opacity:.9;background:url(/assets/ornaments/vine.svg) top/15px 75px repeat-y;width:15px;position:absolute;top:0;bottom:0}.document-trim:before{left:0}.document-trim:after{right:0;transform:scaleX(-1)}.invitation-cover{min-height:calc(100svh - 120px);padding:20px 18px 28px}.invitation-cover:before{background:radial-gradient(at 50% 40%,#7c2b3e3d,#0000 67%),url(/assets/ornaments/brocade.svg) 50%/142px 170px,linear-gradient(100deg,#350e1c,#591b2e 12%,#4e1428 50%,#591b2e 88%,#350e1c);inset:0 -25px}.cover-canopy{object-fit:fill;filter:drop-shadow(0 1px #1c050c);flex-shrink:0;width:calc(100% + 8px);height:auto;max-height:110px;margin:0 auto 19px;display:block}.invitation-cover>.eyebrow{color:var(--foil-light);letter-spacing:.2em;max-width:95%;font-size:8px;line-height:1.9}.cover-emblems{width:100%;color:var(--foil);filter:drop-shadow(0 1px #24060d);justify-content:center;align-items:center;gap:20px;margin:12px 0 9px;display:flex}.cover-emblems .peacock{width:47px;height:43px;display:block}.cover-emblems .lotus{width:53px;height:40px;display:block}.cover-emblems svg{stroke:currentColor;stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;display:block}.mirror{transform:scaleX(-1)}.invitation-line{color:#f4dcc5;margin:5px 0 20px;font-size:14px;line-height:1.75}h1{color:#fff0d4;text-shadow:0 2px #4c101d,0 0 22px #e4bf7d12}h1 em{color:#edc887;margin:9px 0 7px;font-size:37px}.family-names{color:var(--foil-light);letter-spacing:.16em;border-block:1px solid #d9af6d55;margin:21px 0 0;padding:10px 20px;position:relative}.family-names:before,.family-names:after{content:"✧";color:var(--foil);font:16px Georgia,serif;position:absolute;top:7px}.family-names:before{left:-5px}.family-names:after{right:-5px}.date-seal{gap:12px;margin-top:24px}.date-seal strong{color:#fff0d4;border-color:#d9af6d88;font-size:44px}.date-seal span{color:var(--foil-light)}.wedding-day{color:#ead2c0;font-size:12px}.cover-venue{margin-top:20px;font-size:27px}.cover-venue span{color:#ead2c0}.cover-sample{color:#d9b37c;margin-top:18px;font-size:7px}.continue{min-height:45px;color:var(--foil-light);background:linear-gradient(110deg,#d3ad6112,#d3ad6102);border:1px solid #d6b07366;gap:13px;margin-top:25px;margin-bottom:7px;padding:13px 19px 13px 22px;font-size:8px;position:relative}.continue:before,.continue:after{content:"";pointer-events:none;border-inline:1px solid #d6b07366;position:absolute;inset:3px}.continue span{font-size:17px}.section:before{background:linear-gradient(90deg,#0000 0,#d7af6899 35%,#0000 45% 55%,#d7af6899 65%,#0000 100%) 50%/100% 1px no-repeat;width:78%;height:15px;top:-7px}.section:after{content:"";pointer-events:none;border:1px solid #e0b874;width:8px;height:8px;position:absolute;top:-4px;left:calc(50% - 4px);transform:rotate(45deg);box-shadow:0 0 0 3px #d5ad6922}.section-emblem{width:53px;height:36px;color:var(--foil);filter:drop-shadow(0 1px 1px #19030b);margin:0 auto 16px}.section-emblem svg{stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;display:block}.photo-heading h2{font-size:clamp(33px,4vw,46px)}.photo-heading .eyebrow,.story-heading .eyebrow,.celebrations>.eyebrow,.venue>.eyebrow{color:var(--foil-light)}.collage-canvas:before{content:"";pointer-events:none;border:1px solid #cda36655;border-radius:50% 50% 44% 44%;position:absolute;inset:9% 12%;transform:rotate(-12deg)}.collage-canvas:after{content:"";pointer-events:none;border:1px solid #cda36640;border-radius:50% 50% 44% 44%;position:absolute;inset:6% 18%;transform:rotate(12deg)}.collage-hero{border:5px solid #d5b481;box-shadow:0 0 0 1px #efd6a4,0 16px 32px #1a040d80}.collage-small{border-color:#eed8b2;box-shadow:0 0 0 1px #a87b48,0 12px 26px #17040c99}.photo-link:focus-visible{outline-color:#fff4cf}.polaroid{background:#f6e7cc url(/assets/ornaments/brocade.svg) 50%/142px 170px;position:relative;box-shadow:0 0 0 1px #dec69b,0 16px 32px #17040c88}.polaroid:before{content:"";pointer-events:none;z-index:2;border:1px solid #b78a4b66;position:absolute;inset:5px}.polaroid-note{color:#5b2734}.story-caption>.eyebrow{color:var(--foil-light)}.story-caption h3{color:#ffe8c5}.story-caption>p:last-child{color:#edd7c8}.event-grid{gap:24px}.event{background:linear-gradient(140deg,#8b3a4c44,#34091944);border:1px solid #d3ad6155;padding:16px 16px 20px;box-shadow:inset 0 0 0 4px #350a1744,0 7px 20px #19040b22}.event-photo{aspect-ratio:4/3;border-color:#e0bd7d;margin-bottom:18px}.event-photo:after,.venue-photo:after{content:"";pointer-events:none;border:1px solid #f5d69b88;position:absolute;inset:6px}.event-number{float:right;width:35px;height:35px;color:var(--foil-light);border:1px solid #cba26866;border-radius:50%;place-items:center;margin:0 0 0 8px;font-size:19px;display:grid}.event h3{color:#ffe8c5;margin-top:16px}.event>p:not(.event-date){color:#ead2c3}.venue{padding-top:86px}.venue-photo{aspect-ratio:4/3;isolation:isolate;border:3px double #e2bc7a;border-radius:48% 48% 2px 2px/32% 32% 0 0;position:relative;box-shadow:0 0 0 6px #360c1c,0 0 0 7px #ccaa6b55,0 16px 35px #19040d66}.venue-photo:after{border-radius:48% 48% 0 0/32% 32% 0 0}.hanging-lamps{pointer-events:none;color:var(--foil);z-index:3;justify-content:space-between;display:flex;position:absolute;top:17px;left:5px;right:5px}.hanging-lamps>span{transform-origin:50% 0;filter:drop-shadow(0 3px 4px #12020880);width:46px;height:115px}.hanging-lamps svg{stroke:currentColor;stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.venue>p:not(.eyebrow){color:#ead2c3}.venue h2{color:#ffe8c5}.closing .section-emblem{width:68px;height:46px;margin-bottom:6px}.closing>.flourish{margin-top:2px}.closing h2 i{color:#ffe8c5}.outline-button{color:var(--foil-light);border-style:double;border-width:3px}@media (max-width:600px){.invitation{margin-top:30px;margin-bottom:42px}.woven-sheet{padding:0 20px}.woven-sheet:before{inset:10px}.woven-sheet:after{inset:14px}.document-trim{inset:17px 8px}.document-trim:before,.document-trim:after{background-size:12px 60px;width:12px}.invitation-cover{min-height:calc(100svh - 60px);padding:14px 5px 23px}.invitation-cover:before{background-size:auto,112px 134px,auto;inset:0 -20px}.cover-canopy{width:calc(100% + 12px);max-height:84px;margin-bottom:13px}.invitation-cover>.eyebrow{letter-spacing:.14em;max-width:98%;font-size:7px;line-height:1.9}.cover-emblems{gap:19px;margin:9px 0 7px}.cover-emblems .peacock{width:40px;height:37px}.cover-emblems .lotus{width:45px;height:34px}.invitation-line{margin:2px 0 18px;font-size:13px}h1{font-size:clamp(55px,17vw,70px)}h1 em{margin:6px 0;font-size:32px}.family-names{margin-top:20px;padding:9px 14px;font-size:7px}.family-names span{margin-inline:6px}.date-seal{gap:8px;margin-top:22px}.date-seal strong{padding-inline:13px;font-size:41px}.date-seal span{min-width:50px;font-size:8px}.wedding-day{margin-top:13px}.cover-venue{margin-top:21px;font-size:25px}.cover-venue span{font-size:12px}.cover-sample{letter-spacing:.13em;margin-top:17px;font-size:6px}.continue{letter-spacing:.12em;gap:9px;margin-top:23px;padding:12px 13px;font-size:7px}.photo-chapter,.our-story{padding:48px 10px}.section-emblem{width:47px;height:31px;margin-bottom:14px}.photo-heading h2{margin-top:13px;font-size:34px;line-height:1.04}.photo-note{font-size:13px;line-height:1.7}.collage-canvas{aspect-ratio:.82}.collage-hero{border-width:3px;height:67%;top:16.5%}.collage-small{border-width:4px}.collage-1{width:34%;height:38%;top:1%;left:0}.collage-2{width:34%;height:29%;top:6%;right:0}.collage-3{width:34%;height:31%;bottom:1%;left:0}.collage-4{width:37%;height:27%;bottom:4%;right:-1%}.photo-footnote{letter-spacing:.04em;margin-top:24px;font-size:8px;line-height:1.9}.story-heading h2{font-size:45px}.story-sequence{gap:58px;padding-inline:4px}.polaroid{width:91%;padding:10px 10px 0}.story-card{aspect-ratio:4/4.7}.polaroid-note{padding:17px 2px 22px;font-size:20px}.story-caption{margin-top:32px}.story-caption .eyebrow{letter-spacing:.2em;font-size:8px}.story-caption h3{margin-top:13px;font-size:32px;line-height:1.1}.story-caption>p:last-child{font-size:14px;line-height:1.9}.celebrations{padding:52px 10px}.celebrations h2{font-size:36px}.section-intro{font-size:14px;line-height:1.9}.event-grid{gap:25px}.event{padding:12px 12px 19px}.event-photo{aspect-ratio:1.06;margin-bottom:18px}.event h3{font-size:34px}.event-date{line-height:1.9}.event>p:not(.event-date){font-size:14px;line-height:1.85}.event .event-venue{font-size:13px!important}.timezone{padding-inline:8px;font-size:9px;line-height:1.9}.venue{padding:72px 14px 54px}.venue-photo{aspect-ratio:.87;border-radius:48% 48% 2px 2px/26% 26% 0 0;margin-bottom:38px}.hanging-lamps{top:17px;left:0;right:0}.hanging-lamps>span{width:36px;height:96px}.venue h2{font-size:37px}.venue>p:not(.eyebrow){font-size:14px;line-height:1.9}.venue .venue-note{font-size:13px!important}.venue-note br{display:none}.closing{padding:51px 12px 47px}.closing h2 i{font-size:40px}.closing .family-attribution{font-size:13px}.closing .sample-note{font-size:10px}.text-button{font-size:9px}}@media (max-width:350px){.invitation-cover>.eyebrow{letter-spacing:.1em;font-size:6px}.cover-canopy{margin-bottom:12px}.cover-emblems{gap:14px}.invitation-line{font-size:12px}.family-names{font-size:6px}.cover-venue{font-size:23px}.cover-venue span{font-size:11px}.continue{letter-spacing:.09em;padding-inline:10px;font-size:6px}.story-caption h3{font-size:28px}.photo-heading h2{font-size:31px}.polaroid-note{font-size:18px}.event-date{font-size:7px!important}.venue h2{font-size:32px}}@media (min-width:900px) and (min-height:700px) and (prefers-reduced-motion:no-preference){.collage-motion .section-emblem{height:28px;margin-bottom:9px}.story-motion .section-emblem{height:24px;margin-bottom:6px}.story-motion .story-heading .photo-note{margin-bottom:10px}.story-motion .polaroid-note{font-size:18px}.story-motion .polaroid{width:clamp(180px,25svh,235px)}}@media (max-width:899px),(hover:none){.invitation{filter:none}body.reading{background-attachment:scroll}}@media (prefers-reduced-motion:reduce){.photo-link img,.polaroid,.collage-small,.venue-photo{will-change:auto}}.stage{isolation:isolate;background:#790d20}.palace-backdrop{z-index:-1;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.palace-backdrop img{object-fit:cover;object-position:50% 80%;width:100%;height:100%;display:block}.stage:after{box-shadow:none}body,body.reading{isolation:isolate;background:#790d20}body:before{content:"";z-index:-1;pointer-events:none;background:#790d20 url(/assets/palace-courtyard-wide-v2.webp) 50% 80%/cover no-repeat;position:fixed;inset:0}@media (max-aspect-ratio:1){body:before{background-image:url(/assets/palace-courtyard-tall-v2.webp)}}h1{font-family:var(--font-script);letter-spacing:0;text-shadow:0 1px 1px #2d0c1840;font-size:88px;line-height:1.1}h1 em{font-family:var(--font-text);margin:0;font-size:32px;line-height:1}h2,h3{letter-spacing:0;line-height:1.15}.invitation-line,.photo-note{font-size:17px;font-style:italic;line-height:1.65}.eyebrow,.invitation-cover>.eyebrow{letter-spacing:.12em;font-size:11px;font-weight:500}.family-names{letter-spacing:.12em;font-size:12px;font-weight:500}.date-seal span{letter-spacing:.1em;font-size:12px;font-weight:500}.date-seal strong{font-variant-numeric:lining-nums}.wedding-day{font-size:16px}.cover-venue span{font-size:15px}.continue{letter-spacing:.1em;font-size:11px;font-weight:500}.event-date{letter-spacing:.04em;font-size:11px!important}.story-caption>p:last-child,.event>p:not(.event-date){font-size:16px}.story-caption .eyebrow{letter-spacing:.12em;font-size:11px}.polaroid-note{font-size:23px}.timezone,.photo-footnote{letter-spacing:.02em;font-size:12px}.cover-sample,.sample-label{letter-spacing:.1em;font-size:9px}.outline-button,.text-button{letter-spacing:.04em;font-size:13px}.closing h2 i{font-family:var(--font-script);font-size:56px;font-style:normal;line-height:1.3;display:inline-block}@media (max-width:600px){h1{font-size:clamp(66px,20vw,80px)}h1 em{font-size:29px}.invitation-line,.photo-note{font-size:16px}.invitation-cover>.eyebrow{letter-spacing:.08em;font-size:10px}.family-names{letter-spacing:.09em;padding-inline:12px;font-size:10px}.date-seal span{font-size:11px}.wedding-day{font-size:15px}.cover-venue span{font-size:14px}.continue{letter-spacing:.06em;font-size:10px}.cover-sample{font-size:8px}.photo-footnote,.timezone{font-size:11px}.polaroid-note{font-size:22px}.closing h2 i{font-size:50px}}@media (max-width:350px){.invitation-cover>.eyebrow,.family-names,.continue{font-size:9px}.closing h2 i{font-size:44px}}.falling-garden{z-index:40;pointer-events:none;-webkit-user-select:none;user-select:none;contain:strict;position:fixed;inset:0;overflow:hidden}.garden-particle{top:-48px;left:var(--left);width:var(--size);opacity:0;animation:garden-fall var(--duration) var(--delay) linear infinite;position:absolute}.garden-particle>span{animation:garden-sway var(--sway) ease-in-out infinite alternate;display:block}.garden-particle svg{width:100%;height:auto;display:block}.garden-leaf{color:#dab65e}.garden-leaf:nth-child(3n){color:#b98c3e}.garden-flower{color:#fff9ec}@keyframes garden-fall{0%{opacity:0;transform:translate(0,0)rotate(-25deg)}8%{opacity:.72}85%{opacity:.65}to{transform:translate3d(var(--drift), calc(100dvh + 96px), 0) rotate(var(--turn));opacity:0}}@keyframes garden-sway{0%{transform:translate(-13px)rotate(-20deg)}to{transform:translate(13px)rotate(24deg)}}.garden-paused .garden-particle,.garden-paused .garden-particle>span{animation-play-state:paused}html.photo-viewing .falling-garden{visibility:hidden}html.photo-viewing .garden-particle,html.photo-viewing .garden-particle>span{animation-play-state:paused}@media (max-width:600px){.garden-particle:nth-child(n+19){display:none}}@media (prefers-reduced-motion:reduce){.falling-garden{display:none}.garden-particle,.garden-particle>span{animation:none}}.music-status{position:fixed;top:0;left:0}.music-toggle{right:max(20px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));z-index:50;color:#f7e2b5;min-height:46px;font:500 14px/1.2 var(--font-text);letter-spacing:.035em;touch-action:manipulation;background:#36101feb;border:1px solid #d3ad6199;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:11px 17px;transition:background .2s,border-color .2s;display:inline-flex;position:fixed;box-shadow:0 4px 20px #16050b55,inset 0 0 0 3px #d3ad610b}.music-toggle:hover:not(:disabled){background:#54182b;border-color:#e4c583}.music-toggle:focus-visible{outline-offset:4px;outline:2px solid #fff0d9}.music-toggle:disabled{opacity:.75}.music-icon{flex-shrink:0;width:19px;height:19px}.music-toggle[data-state=playing] .music-slash{display:none}.music-bars{align-items:center;gap:2px;height:16px;display:none}.music-toggle[data-state=playing] .music-bars{display:flex}.music-bars i{background:#dfc17f;border-radius:2px;width:2px;height:10px;animation:.8s ease-in-out infinite alternate music-pulse}.music-bars i:nth-child(2){height:15px;animation-delay:-.4s}.music-bars i:nth-child(3){height:8px;animation-delay:-.2s}.music-bars i:nth-child(4){height:13px;animation-delay:-.6s}@keyframes music-pulse{to{transform:scaleY(.35)}}@media (max-width:600px){.music-toggle{right:max(14px, env(safe-area-inset-right));bottom:max(14px, env(safe-area-inset-bottom));padding:11px 14px;font-size:13px}}@media (prefers-reduced-motion:reduce){.music-toggle{transition:none}.music-bars i{animation:none}}
