:root{--ivory:#fbf6ee;--cream:#f5ecdf;--paper:#fffaf3;--champagne:#c6a66b;--gold-soft:#dcc394;--gold-deep:#9f7f49;--blush:#f3dfd8;--blush-soft:#f8ece7;--rose:#c49595;--rose-deep:#9e6a6e;--sage:#a3b198;--sage-deep:#66785f;--brown:#6b5146;--ink:#4a3a35;--ink-soft:#6e5c55;--twilight:#2c2130;--twilight-2:#4a3342;--twilight-3:#7d5962;--haldi:#d9a441;--haldi-soft:#fbf0d6;--mehndi:#7c8f6a;--mehndi-soft:#edf1e6;--serif:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--script:"Great Vibes", "Snell Roundhand", "Apple Chancery", cursive;--sans:"Jost", "Avenir Next", "Segoe UI", system-ui, -apple-system, sans-serif;--deva:"Tiro Devanagari Hindi", "Noto Serif Devanagari", "Kohinoor Devanagari", serif;--gutter:clamp(20px, 5vw, 48px);--section-y:clamp(72px, 12vw, 140px);--radius:18px;--shadow-soft:0 18px 50px -24px #5b3e3259;--ease:cubic-bezier(.22, .61, .36, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--ivory);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;font-weight:300;line-height:1.7;overflow-x:hidden}#root{overflow-x:clip}img,svg{max-width:100%;display:block}h1,h2,h3,p,ul,figure,blockquote,address{margin:0}ul{padding:0;list-style:none}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--champagne);outline-offset:3px;border-radius:4px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--paper);border-radius:999px;padding:10px 16px;font-size:.9rem;transition:transform .2s;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:not(:focus){clip-path:inset(50%)}.skip-link:focus{transform:none}.eyebrow{font-family:var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:14px;font-size:.72rem;font-weight:400}.section{padding:var(--section-y) var(--gutter);position:relative}.section__inner{max-width:1080px;margin:0 auto;position:relative}.section__head{text-align:center;margin-bottom:clamp(40px,7vw,72px)}.section__title{font-family:var(--serif);letter-spacing:.005em;color:var(--brown);text-wrap:balance;font-size:clamp(2.05rem,7.4vw,3.4rem);font-weight:400;line-height:1.12}.section__intro{max-width:34ch;font-family:var(--serif);color:var(--ink-soft);margin:18px auto 0;font-size:1.25rem;font-style:italic}.divider{color:var(--champagne);justify-content:center;align-items:center;gap:12px;max-width:280px;margin:18px auto 0;display:flex}.divider svg{flex:none;width:44px}.divider__line{opacity:.6;background:linear-gradient(90deg,#0000,currentColor);flex:1;height:1px}.divider__line:last-child{background:linear-gradient(270deg,#0000,currentColor)}.couple-name{font-family:var(--script);white-space:nowrap;flex-wrap:nowrap;justify-content:center;align-items:center;gap:.18em;font-weight:400;line-height:1.1;display:flex}.couple-name__part{padding:0 .04em}.couple-name__heart{width:.36em;color:var(--champagne);display:inline-flex;transform:translateY(.04em)}.couple-name__heart svg{width:100%;height:auto}.btn{min-height:50px;font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;cursor:pointer;isolation:isolate;transition:transform .5s var(--ease), box-shadow .5s var(--ease), background-color .5s var(--ease), color .5s var(--ease), border-color .5s var(--ease);-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;padding:14px 30px;font-size:.78rem;font-weight:400;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";z-index:-1;transition:transform 1.1s var(--ease);background:linear-gradient(110deg,#0000 30%,#fff8e68c 50%,#0000 70%);position:absolute;inset:0;transform:translate(-110%)}.btn:hover:after,.btn:focus-visible:after{transform:translate(110%)}.btn:active{transform:scale(.98)}.btn--glow{color:#fff9ee;-webkit-backdrop-filter:blur(4px);background:#fff4de0f;border:1px solid #dcc394bf;box-shadow:0 0 0 4px #dcc39414,0 10px 40px -10px #f3d6a073}.btn--glow:hover{background:#fff4de24;box-shadow:0 0 0 6px #dcc3941a,0 14px 50px -10px #f3d6a099}.btn--solid{color:var(--paper);background:linear-gradient(135deg,#b8955a,#d5b880 55%,#b08a50);border:1px solid #9f7f4966;box-shadow:0 10px 26px -12px #7858288c}.btn--solid:hover{transform:translateY(-1px);box-shadow:0 14px 32px -12px #785828b3}.hero{min-height:100svh;padding:calc(env(safe-area-inset-top) + 56px) 16px 72px;color:#fbf1e3;isolation:isolate;background:var(--twilight);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero__sky{z-index:-3;background:radial-gradient(60% 40% at 50% 46%,#ffe2b438,#0000 70%),radial-gradient(90% 50% at 80% 8%,#c4959547,#0000 60%),linear-gradient(#241b29 0%,#3b2a38 30%,#634350 58%,#9a6f72 82%,#c9a091 100%);position:absolute;inset:-10% 0 0}.motion .hero__sky{animation:26s ease-in-out infinite alternate skyDrift}@keyframes skyDrift{to{transform:translateY(4%)scale(1.04)}}.stars{z-index:-2;pointer-events:none;position:absolute;inset:0}.star{opacity:.7;background:#fff3d9;border-radius:50%;position:absolute;box-shadow:0 0 6px 1px #ffeec899}.motion .star{animation:5s ease-in-out infinite twinkle}@keyframes twinkle{0%,to{opacity:.18}50%{opacity:.9}}.hero__moon{z-index:-2;opacity:.9;width:clamp(70px,18vw,130px);position:absolute;top:clamp(52px,9vh,90px);right:clamp(8px,7vw,120px)}.hero__lights{z-index:-1;pointer-events:none;width:100%;height:clamp(70px,14vw,130px);position:absolute;top:0;left:0}.bulb{opacity:.85}.motion .bulb{animation:3.2s ease-in-out infinite glimmer}@keyframes glimmer{0%,to{opacity:.45}50%{opacity:1}}.hero__mountains{z-index:-1;color:#3a2833;opacity:.4;width:100%;height:clamp(56px,11vh,130px);position:absolute;bottom:0;left:0}.hero__sprig{z-index:-1;width:clamp(130px,34vw,280px);color:var(--gold-soft);opacity:.45;position:absolute;bottom:-8px}.hero__sprig--left{left:-18px}.hero__sprig--right{right:-18px;transform:scaleX(-1)}.petals{z-index:0;pointer-events:none;display:none;position:absolute;inset:0;overflow:hidden}.motion .petals{display:block}.petal{opacity:0;will-change:transform, opacity;border-radius:80% 0;animation:linear infinite petalFall;position:absolute;top:-40px}.petal--a{background:linear-gradient(135deg,#f7dcd6,#d9a6a6)}.petal--b{background:linear-gradient(135deg,#fff3ea,#ebc7bd)}@keyframes petalFall{0%{opacity:0;transform:translate(0,0)rotate(0)}10%{opacity:.75}85%{opacity:.6}to{transform:translate3d(var(--drift), 105vh, 0) rotate(var(--spin));opacity:0}}.hero__stage{z-index:1;flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.blessing{font-family:var(--deva);letter-spacing:.06em;color:var(--gold-soft);text-align:center;margin-bottom:18px;font-size:clamp(.95rem,3.6vw,1.12rem)}.arch{text-align:center;border:1px solid #dcc39499;border-bottom:0;border-radius:999px 999px 0 0;width:min(100%,520px);padding:clamp(60px,17vw,104px) clamp(18px,6vw,48px) clamp(36px,7vw,56px);position:relative}.arch:before{content:"";pointer-events:none;border:1px solid #dcc39447;border-bottom:0;border-radius:999px 999px 0 0;position:absolute;inset:9px 9px 0}.arch:after{content:"";background:linear-gradient(90deg,#0000,#dcc394b3,#0000);height:1px;position:absolute;bottom:0;left:-14px;right:-14px}.arch__glow{z-index:-1;transition:opacity 1.2s var(--ease);background:radial-gradient(70% 55% at 50% 42%,#ffe9c433,#ffe9c40a 60%,#0000 80%);border-radius:999px 999px 0 0;position:absolute;inset:0}.hero--entered .arch__glow{opacity:1.6;background:radial-gradient(75% 60% at 50% 42%,#ffe9c452,#ffe9c40f 62%,#0000 82%)}.motion .arch__glow{animation:7s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.7}}.arch__lotus{width:64px;color:var(--gold-soft);margin:0 auto 10px}.hero__names{color:#fff6e8;text-shadow:0 2px 30px #ffdcaa59;--i:2;margin:4px 0 6px;font-size:clamp(2.9rem,13.6vw,6.4rem)}.hero__names .couple-name__heart{color:var(--gold-soft)}.hero__subtitle{font-family:var(--serif);color:#f6e3cc;letter-spacing:.02em;font-size:clamp(1.25rem,5vw,1.6rem);font-style:italic;font-weight:400}.hero__rule{background:linear-gradient(90deg, transparent, var(--gold-soft), transparent);width:64px;height:1px;margin:22px auto;display:block}.hero__invite{color:#fbf1e3e6;max-width:30ch;margin:0 auto;font-size:clamp(1rem,3.9vw,1.1rem);line-height:1.75}.hero__date{font-family:var(--serif);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);justify-content:center;align-items:center;gap:14px;margin:26px 0 30px;font-size:clamp(1.15rem,4.6vw,1.4rem);font-weight:500;display:flex}.hero__date span{opacity:.8;font-size:.6em}.scroll-cue{bottom:calc(env(safe-area-inset-bottom) + 14px);z-index:2;justify-content:center;width:30px;height:46px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.scroll-cue__line{background:linear-gradient(180deg, transparent, var(--gold-soft));width:1px;height:100%}.motion .scroll-cue__line{animation:cue 2.6s var(--ease) infinite;transform-origin:top}@keyframes cue{0%{opacity:0;transform:scaleY(0)}40%{opacity:1}to{opacity:0;transform:scaleY(1)}}.motion .hero:not(.hero--ready) .intro{opacity:0}.motion .hero--ready .intro{opacity:0;animation:introUp 1.1s var(--ease) forwards;animation-delay:calc(var(--i,0) * .16s + .15s)}@keyframes introUp{0%{opacity:0;filter:blur(4px);transform:translateY(14px)}to{opacity:1;filter:blur();transform:none}}.curtain{z-index:90;pointer-events:none;opacity:0;transition:opacity .5s var(--ease);background:radial-gradient(circle at 50% 45%,#fffaf0 0%,#f7ead6 55%,#ead3b8 100%);position:fixed;inset:0}.curtain--on{opacity:1}.music{right:16px;bottom:calc(env(safe-area-inset-bottom) + 16px);z-index:40;-webkit-backdrop-filter:blur(8px);width:48px;height:48px;box-shadow:var(--shadow-soft);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .5s, transform .5s var(--ease);background:#fbf6eee6;border:1px solid #c6a66b99;border-radius:50%;place-items:center;display:grid;position:fixed;transform:translateY(10px)}.music--visible{opacity:1;pointer-events:auto;transform:none}.music__bars{align-items:flex-end;gap:3px;height:16px;display:flex}.music__bars i{background:var(--gold-deep);border-radius:1px;width:2px;height:6px;display:block}.music--playing .music__bars i{animation:1.1s ease-in-out infinite bars}.music--playing .music__bars i:nth-child(2){animation-delay:.2s}.music--playing .music__bars i:nth-child(3){animation-delay:.4s}@keyframes bars{50%{height:16px}}.motion .reveal{opacity:0;transition:opacity 1.1s var(--ease), transform 1.1s var(--ease);transition-delay:var(--reveal-delay,0s);transform:translateY(22px)}.motion .reveal.is-visible{opacity:1;transform:none}.story{background:radial-gradient(70% 40% at 50% 0%, #c9a09138, transparent 70%), var(--ivory)}.story__verses{text-align:center;max-width:560px;margin:0 auto}.story__verse{font-family:var(--serif);color:var(--brown);font-size:clamp(1.35rem,5.2vw,1.75rem);line-height:1.45}.story__verse+.story__verse{margin-top:8px}.story__verse:last-child{color:var(--rose-deep);font-style:italic}.story__closing{text-align:center;max-width:38ch;color:var(--ink-soft);margin:0 auto;font-size:clamp(1.02rem,3.9vw,1.12rem)}.story__quote{text-align:center;border-top:1px solid #c6a66b59;border-bottom:1px solid #c6a66b59;max-width:520px;margin:clamp(44px,8vw,72px) auto 0;padding:28px 24px}.story__quote-lotus{width:46px;color:var(--champagne);margin:0 auto 12px}.story__quote p{font-family:var(--serif);color:var(--brown);font-size:clamp(1.15rem,4.4vw,1.35rem);font-style:italic;line-height:1.55}.sky-card{isolation:isolate;color:#fbf1e3;text-align:center;max-width:560px;box-shadow:var(--shadow-soft), 0 0 0 1px #c6a66b80, 0 0 0 6px var(--ivory), 0 0 0 7px #c6a66b59;background:radial-gradient(70% 45% at 50% 55%,#ffe2b42e,#0000 70%),linear-gradient(#241b29 0%,#3b2a38 45%,#634350 80%,#8a6168 100%);border-radius:999px 999px 18px 18px;margin:clamp(48px,9vw,84px) auto;padding:clamp(40px,9vw,64px) clamp(14px,4vw,32px) clamp(28px,6vw,40px);position:relative;overflow:hidden}.sky-card .stars{z-index:-1}.sky-card__moon{z-index:-1;opacity:.8;width:clamp(30px,8vw,44px);position:absolute;bottom:24%;left:9%}.sky-card__eyebrow{letter-spacing:.32em;text-transform:uppercase;color:var(--gold-soft);font-size:.68rem}.constellation{width:100%;max-width:440px;margin:10px auto 0;overflow:visible}.constellation__line{fill:none;stroke:var(--gold-soft);stroke-width:1px;stroke-opacity:.75;stroke-linejoin:round}.motion .constellation__line{stroke-dasharray:1200;stroke-dashoffset:1200px;transition:stroke-dashoffset 3.2s var(--ease) .3s}.motion .is-visible .constellation__line{stroke-dashoffset:0}.constellation__star{fill:#fff4dc}.constellation__halo{fill:url(#starHalo)}.motion .constellation__halo{animation:4s ease-in-out infinite glimmer}.constellation__name{font-family:var(--script);fill:#fff6e8;font-size:34px}.sky-card__caption{font-family:var(--serif);color:#f6e3cc;margin-top:6px;font-size:clamp(1.1rem,4.4vw,1.3rem);font-style:italic}.sky-card__mountains{z-index:-1;color:#2c2130;opacity:.35;width:100%;height:22%;position:absolute;bottom:0;left:0}.promises{background:linear-gradient(180deg, var(--ivory), var(--blush-soft) 55%, var(--ivory))}.vows{counter-reset:vow;gap:18px;max-width:880px;margin:0 auto;padding:0;list-style:none;display:grid;position:relative}.vows:before{content:"";background:linear-gradient(180deg, transparent, var(--champagne) 8%, var(--champagne) 92%, transparent);opacity:.55;width:1px;position:absolute;top:24px;bottom:24px;left:23px}.vow{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:16px;display:grid;position:relative}.vow__mark{z-index:1;background:var(--paper);width:48px;height:48px;box-shadow:0 0 0 5px var(--blush-soft);font-family:var(--serif);color:var(--gold-deep);border:1px solid #c6a66b8c;border-radius:50%;place-items:center;font-size:1.05rem;font-weight:500;display:grid;position:relative}.vow__body{background:#fffaf3bf;border:1px solid #c6a66b40;border-radius:14px;padding:16px 20px 18px}.vow__step{font-family:var(--deva);color:var(--rose-deep);font-size:.92rem}.vow__title{font-family:var(--serif);color:var(--brown);margin-top:2px;font-size:1.45rem;font-weight:500;line-height:1.25}.vow__text{color:var(--ink-soft);margin-top:4px;font-size:1rem;line-height:1.6}.vows__fire{text-align:center;color:var(--champagne);flex-direction:column;align-items:center;gap:10px;margin-top:clamp(36px,7vw,56px);display:flex}.vows__fire svg{width:40px}.vows__fire p{max-width:34ch;font-family:var(--serif);color:var(--ink-soft);font-size:1.2rem;font-style:italic}.motion .vows__flame{transform-origin:50% 90%;animation:3.6s ease-in-out infinite flame}@keyframes flame{50%{opacity:.85;transform:scale(1.04,1.08)}}@media (width>=820px){.vows{gap:6px}.vows:before{left:50%}.vow{grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr);gap:28px}.vow__mark{grid-area:1/2;margin-top:14px}.vow__body{grid-area:1/3}.vow:nth-child(2n) .vow__body{text-align:right;grid-column:1}}.countdown{background:radial-gradient(60% 70% at 50% 50%, #fffcf5e6, transparent 75%), linear-gradient(180deg, var(--ivory), #f6e7df 50%, var(--ivory));overflow:hidden}.countdown__stars .star{background:var(--champagne);box-shadow:0 0 6px 1px #c6a66b59}.countdown__stars{z-index:0}.countdown .section__inner{z-index:1}.countdown__clock{border-top:1px solid #c6a66b73;border-bottom:1px solid #c6a66b73;grid-template-columns:repeat(4,1fr);max-width:640px;margin:0 auto;padding:clamp(22px,5vw,34px) clamp(4px,2vw,18px);display:grid}.countdown__unit{flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.countdown__unit+.countdown__unit:before{content:"";background:linear-gradient(#0000,#c6a66b99,#0000);width:1px;height:54%;position:absolute;top:18%;left:0}.countdown__value{font-family:var(--serif);color:var(--brown);font-variant-numeric:lining-nums tabular-nums;font-size:clamp(2.2rem,10.5vw,4.2rem);font-weight:300;line-height:1}.countdown__label{letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);font-size:clamp(.62rem,2.6vw,.74rem)}.countdown__caption{text-align:center;font-family:var(--serif);color:var(--ink-soft);margin-top:22px;font-size:1.15rem;font-style:italic}.countdown__after{text-align:center;font-family:var(--serif);color:var(--brown);font-size:1.35rem}.countdown__heart{width:34px;color:var(--rose);margin:0 auto 14px}.events{background:var(--ivory)}.timeline{--tl-date:58px;--tl-node:26px;--tl-gap:12px;--tl-row:22px;--tl-dot-y:22px;gap:var(--tl-row);max-width:760px;margin:0 auto;padding:0;list-style:none;display:grid}.tl{--accent:var(--champagne);--accent-soft:var(--blush-soft);--accent-ink:var(--brown);grid-template-columns:var(--tl-date) var(--tl-node) minmax(0, 1fr);column-gap:var(--tl-gap);align-items:start;display:grid}.tl--haldi{--accent:var(--haldi);--accent-soft:var(--haldi-soft);--accent-ink:#8a6420}.tl--mehndi{--accent:var(--mehndi);--accent-soft:var(--mehndi-soft);--accent-ink:#55664a}.tl--wedding{--accent:var(--champagne);--accent-soft:var(--blush);--accent-ink:var(--rose-deep)}.tl__date{text-align:right;flex-direction:column;align-items:flex-end;padding-top:6px;line-height:1;display:flex}.tl__weekday,.tl__month{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-size:.66rem}.tl__day{font-family:var(--serif);color:var(--accent-ink);font-variant-numeric:lining-nums;margin:4px 0 3px;font-size:2.2rem;font-weight:500}.tl__node{align-self:stretch;position:relative}.tl__node:before{content:"";top:0;left:50%;bottom:calc(-1 * var(--tl-row));background:linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 40%, var(--champagne)));opacity:.6;width:1px;position:absolute;transform:translate(-50%)}.tl:first-child .tl__node:before{top:var(--tl-dot-y)}.tl--last .tl__node:before{height:var(--tl-dot-y);bottom:auto}.tl__dot{left:50%;top:var(--tl-dot-y);background:var(--paper);border:2px solid var(--accent);width:16px;height:16px;box-shadow:0 0 0 4px var(--ivory);border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.tl--last .tl__dot{background:var(--blush);width:28px;height:28px;color:var(--rose-deep);box-shadow:0 0 0 4px var(--ivory), 0 0 0 5px #c6a66b66;border-width:1px}.tl__dot svg{width:13px}.motion .tl--last .tl__dot{animation:3.6s ease-in-out infinite dotGlow}@keyframes dotGlow{50%{box-shadow:0 0 0 4px var(--ivory), 0 0 0 5px #c6a66b66, 0 0 18px 6px #c4959559}}.tl__location{border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-ink);background:#ffffff80;border-radius:999px;margin-top:10px;padding:4px 12px;font-size:.68rem;display:inline-block}.tl__venue{border-top:1px solid color-mix(in srgb, var(--accent) 35%, transparent);color:var(--ink-soft);flex-direction:column;margin-top:12px;padding-top:12px;font-size:.98rem;font-style:normal;line-height:1.55;display:flex}.tl__venue strong{font-family:var(--serif);color:var(--brown);margin-bottom:2px;font-size:1.3rem;font-weight:500}.tl__line{font-family:var(--serif);color:var(--ink-soft);margin-top:12px;font-size:1.1rem;font-style:italic;line-height:1.45}.tl__map{margin-top:16px}@media (width>=760px){.timeline{--tl-date:96px;--tl-node:40px;--tl-gap:18px;--tl-row:30px;--tl-dot-y:30px}.tl__day{font-size:3rem}}.dev-hint{border:1px dashed var(--rose);color:var(--rose-deep);border-radius:8px;margin-top:20px;padding:8px 12px;font-size:.75rem}.families{background:linear-gradient(180deg, var(--ivory), var(--cream))}.families__grid{gap:18px;max-width:920px;margin:0 auto;display:grid}.family{text-align:center;border-radius:var(--radius);background:#fffaf3b3;border:1px solid #c6a66b4d;padding:34px 22px}.family__role{letter-spacing:.3em;text-transform:uppercase;color:var(--gold-deep);font-size:.74rem}.family__name{font-family:var(--serif);color:var(--brown);margin-top:6px;font-size:clamp(1.8rem,7vw,2.3rem);font-weight:500;line-height:1.2}.family__group{margin-top:22px}.family__label{font-family:var(--serif);color:var(--rose-deep);font-size:1.1rem;font-style:italic}.family__names li{color:var(--ink);font-size:1.05rem;line-height:1.65}.families__join{color:var(--champagne);justify-content:center;align-items:center;gap:14px;display:flex}.families__join-line{opacity:.5;background:currentColor;width:48px;height:1px}.families__amp{font-family:var(--script);font-size:2.6rem;line-height:1}.families__lotus{display:none}@media (width>=820px){.families__grid{grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}.family{padding:44px 30px}.families__join{flex-direction:column;gap:12px}.families__join-line{background:linear-gradient(#0000,currentColor);width:1px;height:70px}.families__join-line:last-child{background:linear-gradient(currentColor,#0000)}.families__lotus{width:44px;display:block}}.note{background:var(--cream);padding-top:calc(var(--section-y) * .6)}.note__card{text-align:center;background:radial-gradient(90% 60% at 50% 0%, #f3dfd899, transparent 70%), var(--paper);max-width:640px;box-shadow:var(--shadow-soft), 0 0 0 1px #c6a66b4d;border-radius:4px;margin:0 auto;padding:clamp(48px,10vw,76px) clamp(24px,7vw,64px);position:relative;overflow:hidden}.note__card:before{content:"";pointer-events:none;border:1px solid #c6a66b4d;position:absolute;inset:12px}.note__sprig{width:120px;color:var(--rose);opacity:.35;position:absolute}.note__sprig--tl{top:-20px;left:-26px;transform:rotate(180deg)scaleX(-1)}.note__sprig--br{bottom:-20px;right:-26px;transform:scaleX(-1)}.note__text{font-family:var(--serif);color:var(--ink);margin-top:22px;font-size:clamp(1.2rem,4.6vw,1.4rem);line-height:1.6}.note__text:first-of-type{margin-top:28px}.note__signoff{font-family:var(--serif);color:var(--ink-soft);margin-top:32px;font-size:1.15rem;font-style:italic}.note__names{color:var(--rose-deep);margin-top:2px;font-size:clamp(2.3rem,10vw,3.2rem)}.finale{min-height:88svh;padding:96px 20px calc(env(safe-area-inset-bottom) + 88px);isolation:isolate;text-align:center;color:#fbf1e3;background:linear-gradient(#c9a091 0%,#8a5f66 22%,#4f3644 56%,#251b29 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.finale__glow{z-index:-2;background:radial-gradient(50% 40% at 50% 48%,#ffe2b442,#0000 72%);position:absolute;inset:0}.finale .stars{top:20%}.finale__moon{z-index:-1;opacity:.75;width:clamp(54px,13vw,96px);position:absolute;top:18%;left:10%;transform:scaleX(-1)}.finale__mountains{z-index:-1;color:#1c1520;opacity:.7;width:100%;height:clamp(80px,16vh,170px);position:absolute;bottom:0;left:0}.finale__line{font-family:var(--serif);color:#f6e3cc;font-size:clamp(1.3rem,5vw,1.7rem);font-style:italic}.finale__names{color:#fff6e8;text-shadow:0 2px 30px #ffdcaa59;margin:10px 0 8px;font-size:clamp(2.8rem,13vw,5.4rem)}.finale__date{font-family:var(--serif);letter-spacing:.34em;color:var(--gold-soft);padding-left:.34em;font-size:clamp(1.15rem,4.6vw,1.4rem)}.finale__heart{width:30px;color:var(--gold-soft);margin:26px auto 0}.motion .finale__heart{animation:4.5s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.finale__top{bottom:calc(env(safe-area-inset-bottom) + 24px);letter-spacing:.26em;text-transform:uppercase;color:#fbf1e3b3;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:10px 16px;font-size:.7rem;position:absolute;left:50%;transform:translate(-50%)}.finale__top:hover{color:var(--gold-soft)}@media (width<=360px){.hero__date{letter-spacing:.1em;gap:10px}.btn{letter-spacing:.18em;padding:14px 22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html.env-lock,html.env-lock body{overflow:hidden}.envelope-screen{z-index:120;padding:max(28px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));isolation:isolate;color:#fbf1e3;text-align:center;transition:opacity .75s var(--ease), visibility 0s linear .75s;background:radial-gradient(60% 40% at 50% 55%,#ffe2b433,#0000 70%),radial-gradient(90% 50% at 80% 8%,#c4959540,#0000 60%),linear-gradient(#241b29 0%,#3b2a38 35%,#634350 70%,#8f6669 100%);flex-direction:column;justify-content:center;align-items:center;gap:clamp(28px,6vh,56px);display:flex;position:fixed;inset:0;overflow:hidden}.envelope-screen--leaving{opacity:0;visibility:hidden}.envelope-screen .stars{z-index:-1}.envelope-screen__moon{z-index:-1;opacity:.85;width:clamp(54px,14vw,96px);position:absolute;top:max(28px,6vh);right:9%}.envelope-screen__top,.envelope-screen__hint{transition:opacity .6s var(--ease), transform .6s var(--ease)}.envelope-screen--open .envelope-screen__top,.envelope-screen--leaving .envelope-screen__top{opacity:0;transform:translateY(-12px)}.envelope-screen--open .envelope-screen__hint,.envelope-screen--leaving .envelope-screen__hint{opacity:0}.envelope-screen__sub{letter-spacing:.34em;text-transform:uppercase;color:var(--gold-soft);font-size:.72rem}.envelope-screen__kicker{font-family:var(--script);color:#fff6e8;text-shadow:0 2px 30px #ffdcaa59;margin-top:6px;font-size:clamp(2.8rem,12vw,4.4rem);line-height:1.1}.envelope-screen__hint{letter-spacing:.26em;text-transform:uppercase;color:#fbf1e3cc;font-size:.74rem}.motion .envelope-screen--closed .envelope-screen__hint{animation:2.6s ease-in-out infinite hintPulse}@keyframes hintPulse{50%{opacity:.45}}.env{aspect-ratio:1.42;cursor:pointer;perspective:1400px;-webkit-tap-highlight-color:transparent;width:min(92vw,560px);max-width:100%;transition:transform .8s var(--ease);background:0 0;border:0;margin:0;padding:0;display:block;position:relative}.env:focus-visible{outline-offset:10px;border-radius:8px}.motion .envelope-screen--closed .env{animation:5s ease-in-out infinite envFloat}@keyframes envFloat{50%{transform:translateY(-7px)}}@media (hover:hover){.envelope-screen--closed .env:hover{transform:translateY(-4px)rotate(-.6deg)}}.envelope-screen--open .env{transform:translateY(18%)}.envelope-screen--leaving .env{transform:translateY(14%)scale(1.06)}.env__back{z-index:0;background:linear-gradient(#d9b2a8,#e8cdc4 60%);border-radius:6px;position:absolute;inset:0;box-shadow:0 34px 70px -24px #0a040cb3,0 0 0 1px #dcc39459}.env__letter{z-index:2;height:92%;color:var(--brown);background:radial-gradient(90% 55% at 50% 0%, #f3dfd8bf, transparent 70%), var(--paper);transition:transform 1.05s var(--ease) .7s;border-radius:3px;flex-direction:column;align-items:center;gap:2%;padding-top:7%;display:flex;position:absolute;top:4%;left:5%;right:5%;box-shadow:0 4px 14px #5a32322e}.env__letter:before{content:"";pointer-events:none;border:1px solid #c6a66b80;border-radius:2px;position:absolute;inset:7px}.env--open .env__letter{transform:translateY(-62%)}.env__blessing{font-family:var(--deva);color:var(--gold-deep);font-size:clamp(.62rem,2.6vw,.85rem)}.env__lotus{width:13%;color:var(--champagne)}.env__names{color:var(--rose-deep);font-size:clamp(1.9rem,8.8vw,3.2rem)}.env__date{font-family:var(--serif);color:var(--gold-deep);font-size:clamp(.95rem,4vw,1.3rem);font-style:italic}.env__pocket{z-index:3;clip-path:polygon(0 0,50% 56%,100% 0,100% 100%,0 100%);background:linear-gradient(200deg,#ffffff59,#0000 40%),linear-gradient(170deg,#f8ece7,#efd9d0);border-radius:6px;position:absolute;inset:0}.env__pocket svg{width:100%;height:100%;position:absolute;inset:0}.env__pocket path{fill:none;stroke:#9f7f4966;stroke-width:1px;vector-effect:non-scaling-stroke}.env__note{z-index:4;font-family:var(--script);color:var(--rose-deep);opacity:.9;font-size:clamp(1.1rem,5.2vw,1.75rem);position:absolute;bottom:8%;left:0;right:0}.env__flap-wrap{z-index:5;transform-origin:50% 0;filter:drop-shadow(0 6px 7px #5a323247);height:60%;transition:transform .8s var(--ease) .2s, z-index 0s linear .6s;position:absolute;top:0;left:0;right:0}.env__flap{clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(#ffffff4d,#0000 50%),linear-gradient(#f5e6e0,#e9cfc6);border-radius:6px 6px 0 0;position:absolute;inset:0}.env--open .env__flap-wrap{z-index:1;transform:rotateX(180deg)}.env__seal{z-index:6;aspect-ratio:1;width:clamp(92px,26vw,128px);transition:transform .55s var(--ease), opacity .45s var(--ease);background:radial-gradient(circle at 35% 30%,#c98088,#9c4b55 55%,#7a3540);border-radius:50%;place-items:center;display:grid;position:absolute;top:60%;left:50%;transform:translate(-50%,-50%);box-shadow:0 5px 12px #3c141973,inset 0 0 0 5px #00000014,inset 0 0 0 8px #ffffff14}.env__seal:before{content:"";z-index:-1;background:#8a3f49;border-radius:47% 53% 50% 46%/52% 47% 53% 48%;position:absolute;inset:-5%}.env__seal:after{content:"";opacity:0;border:1px solid #f3d9a499;border-radius:50%;position:absolute;inset:-10%}.motion .envelope-screen--closed .env__seal:after{animation:sealRing 2.6s var(--ease) infinite}@keyframes sealRing{0%{opacity:.8;transform:scale(.9)}to{opacity:0;transform:scale(1.45)}}.env__seal span{font-family:var(--serif);letter-spacing:.04em;white-space:nowrap;color:#f3d9a4;text-shadow:0 1px #3c141980;font-size:clamp(.95rem,4.4vw,1.35rem);font-weight:500}.env--open .env__seal{opacity:0;transform:translate(-50%,-50%)scale(1.3)}@media (height<=560px){.envelope-screen{gap:14px}.envelope-screen__kicker{font-size:2.4rem}.env{width:min(99.4vh,92vw)}}.scratch{flex-direction:column;align-items:center;gap:14px;margin:26px 0 30px;display:flex}.scratch__hint{letter-spacing:.22em;text-transform:uppercase;color:var(--gold-soft);text-wrap:balance;font-size:.72rem}.scratch--done .scratch__hint{font-family:var(--serif);letter-spacing:.06em;text-transform:none;color:#f6e3cc;font-size:1.05rem;font-style:italic}.scratch__coins{justify-content:center;gap:clamp(10px,3.4vw,18px);display:flex}.coin{aspect-ratio:1;width:clamp(76px,22vw,96px);color:var(--brown);background:radial-gradient(circle at 50% 35%,#fffaf2,#f3e3d3);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 0 0 1px #dcc394e6,0 0 0 5px #dcc39424,0 10px 24px -10px #00000080}.coin__value{font-family:var(--serif);font-size:clamp(1.45rem,6.6vw,1.9rem);font-weight:500;line-height:1}.coin__label{letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);margin-top:4px;padding-left:.24em;font-size:.56rem}.coin__foil{touch-action:none;cursor:crosshair;width:100%;height:100%;transition:opacity .7s var(--ease), transform .7s var(--ease);border-radius:50%;position:absolute;inset:0}.coin--revealed .coin__foil{opacity:0;pointer-events:none;transform:scale(1.15)}.motion .scratch--done .coin{animation:coinGlow 1.6s var(--ease) 1}@keyframes coinGlow{40%{box-shadow:0 0 0 1px #dcc394,0 0 0 9px #f3d9a44d,0 0 40px 6px #ffe2b473}}.scratch__skip{letter-spacing:.18em;text-transform:uppercase;color:#fbf1e3a6;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:6px 10px;font-size:.7rem;-webkit-text-decoration:underline #dcc39480;text-decoration:underline #dcc39480}.scratch__skip:hover{color:var(--gold-soft)}@media (width<=759px){.timeline{--tl-date:46px;--tl-node:22px;--tl-gap:10px}.tl__day{font-size:2rem}.events{padding-bottom:40px}.countdown{padding-top:48px}}.tl__card{background:linear-gradient(160deg, var(--accent-soft), var(--paper) 70%);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:var(--shadow-soft);border-radius:16px;flex-direction:column;min-width:0;padding:6px 18px;display:flex}.tl--wedding .tl__card{background:radial-gradient(90% 60% at 100% 0%, #ffffffb3, transparent 70%), linear-gradient(160deg, var(--blush), var(--paper) 75%);box-shadow:var(--shadow-soft), inset 0 0 0 5px var(--paper), inset 0 0 0 6px #c6a66b59;border-color:#c6a66b99;padding:10px 20px}.tl__item{--icon:var(--accent);grid-template-columns:44px minmax(0,1fr);align-items:start;gap:12px;padding:14px 0 16px;display:grid}.tl__item+.tl__item{border-top:1px dashed color-mix(in srgb, var(--accent) 45%, transparent)}.tl__item--diya{--icon:#c98a2e}.tl__item--music{--icon:var(--rose-deep)}.tl__icon{width:44px;color:var(--icon);margin-top:2px}.tl__body{min-width:0}.tl__head{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.tl__title{font-family:var(--serif);color:var(--accent-ink);font-size:1.4rem;font-weight:500;line-height:1.2}.tl--wedding .tl__title{font-size:1.7rem}.tl__time{background:color-mix(in srgb, var(--icon) 14%, transparent);letter-spacing:.12em;white-space:nowrap;color:var(--accent-ink);font-variant-numeric:lining-nums;border-radius:999px;padding:2px 10px;font-size:.78rem;font-weight:400;display:inline-block}.tl__location{margin-top:8px;padding:3px 10px}.tl__venue{margin-top:10px;padding-top:10px;font-size:.95rem}.tl__line{margin-top:8px;font-size:1.05rem}@media (width>=760px){.tl__card{padding:8px 28px}.tl--wedding .tl__card{padding:14px 30px}.tl__item{grid-template-columns:56px minmax(0,1fr);gap:18px;padding:18px 0 20px}.tl__icon{width:56px}.tl__title{font-size:1.65rem}.tl--wedding .tl__title{font-size:2rem}}@media (width<=380px){.tl__card,.tl--wedding .tl__card{padding-left:14px;padding-right:14px}.tl__item{grid-template-columns:34px minmax(0,1fr);gap:10px}.tl__icon{width:34px}.tl__title{font-size:1.28rem}}.monogram{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;height:auto;display:block}.hero__logo{--i:2;filter:drop-shadow(0 2px 16px #ffd69647);width:clamp(96px,27vw,132px);margin:0 auto 4px}.env__seal-logo{filter:drop-shadow(0 1px 1px #3c14198c);width:82%}.finale__logo{filter:drop-shadow(0 2px 18px #ffd6964d);width:clamp(96px,26vw,130px);margin:26px auto 0}.tl__item,.tl__item:is(*){display:block}.tl__head{align-items:center}.tl__icon,.tl__icon:is(*){flex:none;width:38px;margin:0}@media (width>=760px){.tl__icon:is(*){width:48px}}.env__seal{top:55%}.env__note{bottom:5%}.monogram--line{aspect-ratio:1;background:currentColor;display:block}.finale__logo{color:var(--gold-soft);filter:none;opacity:.9}.env__lotus.monogram--line{width:17%;color:var(--champagne)}.story{padding-bottom:clamp(48px,8vw,88px)}.story__quote{margin-top:clamp(36px,6vw,56px)}.promises{padding-top:clamp(48px,8vw,96px);padding-bottom:clamp(56px,9vw,104px)}:root{--label-ink:#7d6232}.eyebrow{color:var(--label-ink);font-size:.78rem}.section__intro{color:var(--ink);font-size:1.3rem}.story__closing{color:var(--ink);font-size:1.08rem}.tl__weekday,.tl__month{color:var(--ink);font-size:.75rem}.tl__location{font-size:.75rem;font-weight:400}.tl__time{font-size:.85rem;font-weight:500}.tl__line{color:var(--ink);font-size:1.15rem}.tl__venue{color:var(--ink);font-size:1rem}.countdown__label{color:var(--label-ink);font-size:.75rem}.countdown__caption{color:var(--ink);font-size:1.2rem}.vow__step{font-size:1rem}.vow__text{color:var(--ink);font-size:1.04rem}.family__role{color:var(--label-ink);font-size:.78rem}.family__label{font-size:1.18rem}.family__names li{font-size:1.08rem}.note__signoff{color:var(--ink)}.coin__label{font-size:.66rem}.scratch__hint{font-size:.78rem}.scratch__skip{font-size:.75rem}.sky-card__eyebrow,.envelope-screen__sub,.envelope-screen__hint{font-size:.78rem}.coin__label{letter-spacing:.14em;padding-left:.14em;font-size:.75rem}.tl__place{border-top:1px solid color-mix(in srgb, var(--accent) 45%, transparent);padding:12px 0 16px}.tl__place .tl__venue{border-top:0;margin-top:0;padding-top:0}.tl__place .tl__map{min-height:44px;margin-top:12px;padding:10px 22px}.note__compliments{border-top:1px solid #c6a66b59;margin-top:30px;padding-top:22px}.note__compliments-label{letter-spacing:.26em;text-transform:uppercase;color:var(--label-ink);font-size:.78rem}.note__compliments-name{font-family:var(--serif);color:var(--brown);margin-top:4px;font-size:1.5rem;font-weight:500}.finale__hashtag{flex-direction:column;align-items:center;gap:4px;margin-top:22px;display:flex}.finale__hashtag span{letter-spacing:.22em;text-transform:uppercase;color:#fbf1e3bf;font-size:.78rem}.finale__hashtag strong{font-family:var(--serif);letter-spacing:.04em;color:var(--gold-soft);-webkit-user-select:all;user-select:all;font-size:1.5rem;font-weight:500}.couple-name__heart,.couple-name__heart:is(*){flex:none;width:.4em;height:.35em;margin:0 .12em;line-height:0;display:inline-block;transform:translateY(.02em)}.couple-name__heart svg,.couple-name__heart:is(*) svg{width:100%;height:100%;display:block}.hero__names .couple-name__heart{color:var(--gold-soft);filter:drop-shadow(0 0 10px #ffd69673)}.arch{padding-top:clamp(64px,18vw,110px)}.finale{padding-bottom:calc(env(safe-area-inset-bottom) + 120px)}.finale__moon{top:6%;left:8%}.tl__at{border-top:1px solid color-mix(in srgb, var(--accent) 45%, transparent);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-ink);align-items:center;gap:8px;padding:12px 0 14px;font-size:.78rem;font-weight:400;display:flex}.tl__at:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px}.venues{text-align:center;max-width:760px;margin:clamp(40px,7vw,64px) auto 0}.venues__title{letter-spacing:.32em;text-transform:uppercase;color:var(--label-ink);padding-left:.32em;font-size:.78rem}.venues__grid{gap:16px;margin-top:16px;display:grid}@media (width>=700px){.venues__grid{grid-template-columns:1fr 1fr}}.venue{background:var(--paper);box-shadow:var(--shadow-soft);border:1px solid #c6a66b66;border-radius:16px;flex-direction:column;align-items:center;padding:24px 20px 26px;display:flex}.venue__name{font-family:var(--serif);color:var(--brown);font-size:1.6rem;font-weight:500;line-height:1.2}.venue__for{font-family:var(--serif);color:var(--rose-deep);text-wrap:balance;margin-top:6px;font-size:1.08rem;font-style:italic}.venue__address{color:var(--ink);flex-direction:column;margin-top:12px;font-size:1rem;font-style:normal;line-height:1.6;display:flex}.venue__map{min-height:46px;margin-top:18px;padding:12px 26px}.events{padding-top:clamp(56px,8vw,110px)}.promises{padding-top:clamp(36px,5.3vw,72px)}.families{padding-top:clamp(36px,4.9vw,67px)}.vows{gap:16px}@media (width>=820px){.vows{gap:5px}}@media (width<=759px){.timeline{--tl-node:20px;--tl-gap:12px;--tl-dot-y:13px;--tl-row:18px}.tl{grid-template-columns:var(--tl-node) minmax(0, 1fr);row-gap:0}.tl__node{grid-area:1/1/span 2}.tl__date{text-align:left;flex-direction:row;grid-area:1/2;align-items:baseline;gap:8px;padding:0 0 10px}.tl__day{margin:0;font-size:1.6rem}.tl__weekday,.tl__month{letter-spacing:.18em;font-size:.8rem;font-weight:400}.tl__card{grid-area:2/2}.tl__line{font-size:1.12rem}}.tl__at,.venues__title,.hashtag__label{color:var(--label-ink)}.scratch__skip,.finale__top{min-height:44px;padding:10px 16px}.scratch__skip{color:#fbf1e3d9}.hashtag{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:760px;margin:clamp(40px,7vw,60px) auto 0;display:flex}.hashtag .divider{width:100%;margin:0 auto 4px}.hashtag__label{letter-spacing:.26em;text-transform:uppercase;padding-left:.26em;font-size:.78rem}.hashtag__btn{background:var(--paper);cursor:pointer;min-height:56px;transition:border-color .4s var(--ease), box-shadow .4s var(--ease);border:1px solid #c6a66b73;border-radius:999px;flex-direction:column;align-items:center;gap:2px;padding:8px 26px 10px;display:inline-flex}.hashtag__btn:hover{border-color:var(--champagne);box-shadow:var(--shadow-soft)}.hashtag__tag{font-family:var(--serif);color:var(--rose-deep);font-size:1.6rem;font-weight:500;line-height:1.2}.hashtag__hint{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-size:.75rem}.finale__content{flex-direction:column;align-items:center;gap:10px;display:flex}.finale__compliments-label{letter-spacing:.3em;text-transform:uppercase;color:#fbf1e3d1;padding-left:.3em;font-size:.8rem}.finale__compliments-name{font-family:var(--serif);color:var(--gold-soft);text-shadow:0 2px 26px #ffd6964d;font-size:clamp(2.3rem,10vw,3.4rem);font-weight:500;line-height:1.1}.finale{min-height:72svh;padding-top:96px;padding-bottom:calc(env(safe-area-inset-bottom) + 130px)}.finale__moon{top:10%}.finale__top{font-size:.78rem}.scroll-cue{width:44px}@media (width<=600px){:root{--section-y:52px}.section__head{margin-bottom:28px}.section__intro,.divider{margin-top:12px}.story{padding-bottom:36px}.sky-card{margin:32px auto}.story__quote{margin-top:28px;padding:20px 16px}.events{padding-top:40px;padding-bottom:32px}.timeline{--tl-row:14px}.tl__date{padding-bottom:6px}.tl__item{padding:12px 0 13px}.tl__at{padding:10px 0 11px}.venues{margin-top:28px}.venues__grid{gap:12px;margin-top:12px}.venue{padding:18px 16px 20px}.venue__address{margin-top:8px}.venue__map{margin-top:14px}.hashtag{margin-top:28px}.countdown{padding-top:36px;padding-bottom:40px}.countdown__caption{margin-top:14px}.promises{padding-top:28px;padding-bottom:40px}.vows{gap:12px}.vow__body{padding:12px 16px 14px}.vows__fire{margin-top:28px}.families{padding-top:28px;padding-bottom:44px}.families__grid{gap:12px}.family{padding:24px 18px}.family__group{margin-top:16px}.note{padding-top:8px;padding-bottom:48px}.note__card{padding:40px 22px}.note__text{margin-top:16px}.note__text:first-of-type{margin-top:22px}.note__signoff{margin-top:24px}}.arch{width:min(100%,600px);container-type:inline-size}.hero__names{font-size:clamp(2.2rem,16cqi,5.2rem)}@media (width>=601px){:root{--section-y:clamp(56px, 6vw, 84px)}.section__head{margin-bottom:40px}.story{padding-bottom:52px}.sky-card{margin:48px auto}.story__quote{margin-top:36px}.events{padding-top:60px;padding-bottom:52px}.timeline{--tl-row:22px}.venues,.hashtag{margin-top:40px}.countdown{padding-top:56px;padding-bottom:60px}.promises{padding-top:52px;padding-bottom:60px}.vows__fire{margin-top:36px}.families{padding-top:48px;padding-bottom:60px}.note{padding-top:12px;padding-bottom:72px}}.vow__text{color:#5a4239}.vow__step{color:#8a4b52}.vow__mark{color:var(--label-ink)}.story__closing{margin-bottom:4px}
