@font-face{font-family:Great Vibes;src:url(/fonts/GreatVibes-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-Variable.ttf)format("truetype");font-style:normal;font-weight:300 700;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-Italic-Variable.ttf)format("truetype");font-style:italic;font-weight:300 700;font-display:swap}:root{--dusty-blue:#7287a6;--dusty-blue-deep:#52627c;--dusty-blue-soft:#dde0e6;--powder-blue:#a9b8d3;--slate-gray:#52627c;--silver-gray:#dde0e6;--charcoal:#2f3438;--ink:#22272b;--ivory:#f7f4f2;--white:#fff;--shadow-soft:0 18px 50px #242b311a;--shadow-strong:0 28px 80px #242b312e;--radius-xl:34px;--radius-lg:24px;--font-editorial:"Cormorant Garamond", Garamond, Georgia, serif;--font-luxury:"Cormorant Garamond", Garamond, Didot, "Times New Roman", serif;--font-signature:"Great Vibes", "Segoe Script", cursive}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-editorial);color:var(--charcoal);background:radial-gradient(circle at top left, #7287a629, transparent 24%), radial-gradient(circle at bottom right, #a9b8d33d, transparent 30%), var(--ivory);overflow-x:hidden}body.gate-locked{height:100svh;overflow:hidden}a{color:inherit;text-decoration:none}.couple-signature{font-family:var(--font-signature);font-synthesis:none;letter-spacing:0;text-wrap:balance;font-weight:400}.inline-couple-signature{color:var(--dusty-blue-deep);font-family:var(--font-signature);white-space:nowrap;font-size:1.34em;font-style:normal;font-weight:400;line-height:.82;display:inline-block}.inline-couple-signature em{color:#8798b0;font-size:.78em;font-style:normal}.page{opacity:0;transition:opacity 1s,transform 1s;transform:translateY(18px)}body.site-ready .page{opacity:1;transform:translateY(0)}.section{justify-content:center;align-items:center;min-height:100svh;padding:34px 20px;display:flex;position:relative}.gate{z-index:5000;background:radial-gradient(circle at 50% 28%,#ffffff94,#0000 24%),linear-gradient(#7287a62e,#f7f4f2f5);place-items:center;transition:opacity 1s,visibility 1s;display:grid;position:fixed;inset:0;overflow:hidden}body.site-ready .gate{opacity:0;visibility:hidden;pointer-events:none}.gate-grain{opacity:.55;pointer-events:none;background-image:radial-gradient(circle,#5d71850d 1px,#0000 1px);background-size:7px 7px;position:absolute;inset:0}.gate-wrap{z-index:2;grid-template-columns:.95fr 1.05fr;align-items:center;gap:38px;width:min(1100px,100%);padding:20px;display:grid;position:relative}.gate-copy{text-align:left;color:var(--ink)}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--dusty-blue-deep);margin-bottom:18px;font-family:Arial,Helvetica,sans-serif;font-size:.72rem;display:inline-block}.gate-copy h1{margin-bottom:18px;font-size:clamp(2.7rem,6vw,5.5rem);font-weight:400;line-height:.98}.gate-copy p{color:#596168;max-width:520px;margin-bottom:18px;font-size:1.08rem;line-height:1.95}.gate-note{letter-spacing:.16em;text-transform:uppercase;color:#72808b;font-family:Arial,Helvetica,sans-serif;font-size:.78rem}.envelope-stage{place-items:center;min-height:620px;padding:20px 0;display:grid;position:relative}.envelope{aspect-ratio:1.1/.74;cursor:pointer;filter:drop-shadow(0 32px 70px #242b312e);width:min(92vw,520px);transition:transform .35s;position:relative}.env-back{background:linear-gradient(#fefdfb,#eef2f6);border:1px solid #5d71851a;border-radius:18px;position:absolute;inset:0;overflow:hidden}.env-back:before{content:"";opacity:.58;background-color:#0000;background-image:linear-gradient(135deg,#0000 49.7%,#7f95a826 50%,#0000 50.3%),linear-gradient(225deg,#0000 49.7%,#7f95a826 50%,#0000 50.3%);background-position:0,100%;background-repeat:no-repeat;background-size:50% 100%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.env-letter{text-align:center;z-index:1;background:linear-gradient(#fffffffa,#fffffffa);border:1px solid #7f95a81a;border-radius:18px;place-items:center;height:84%;padding:30px 24px 22px;transition:transform 1.1s cubic-bezier(.2,.9,.2,1),opacity .8s;display:grid;position:absolute;top:10%;left:8%;right:8%;transform:translateY(14%);box-shadow:0 14px 35px #242b311f}.env-letter:before{content:"";pointer-events:none;border:1px dashed #7f95a83d;border-radius:14px;position:absolute;inset:16px}.env-letter h2{color:var(--dusty-blue-deep);margin-bottom:10px;font-size:clamp(1.7rem,4vw,3rem);font-weight:400;line-height:1.08}.env-letter p{color:#69727a;max-width:300px;font-size:.98rem;line-height:1.8}.env-bottom{clip-path:polygon(0 0,100% 0,50% 72%);z-index:2;background:linear-gradient(#f8fbfd,#dde6ee);border-radius:18px;position:absolute;inset:0}.env-front{z-index:4;border-radius:18px;position:absolute;inset:0;overflow:hidden}.env-front:before{content:"";clip-path:polygon(0 0,50% 76%,100% 0,100% 100%,0 100%);background:linear-gradient(#f9fbfc,#dde6ee);border-top:1px solid #5d718514;height:64%;position:absolute;bottom:0;left:0;right:0}.env-flap{z-index:5;transform-origin:top;backface-visibility:hidden;transform-style:preserve-3d;border-radius:18px;transition:transform 1s cubic-bezier(.17,.84,.22,1);position:absolute;inset:0}.env-flap:before{content:"";clip-path:polygon(0 0,100% 0,50% 92%);background:linear-gradient(#f4f8fb,#d4dee8);border-bottom:1px solid #5d71851a;height:68%;position:absolute;top:0;left:0;right:0}.seal-button{cursor:pointer;color:#fff;z-index:6;background:radial-gradient(circle at 35% 35%,#889eb2,#617688 70%);border:none;border-radius:50%;place-items:center;width:110px;height:110px;transition:transform .25s,box-shadow .25s;display:grid;position:absolute;top:56%;left:50%;transform:translate(-50%,-50%);box-shadow:0 16px 34px #5d718542}.seal-button:focus{outline-offset:3px;outline:2px solid #5d718540}body.opening .seal-button{pointer-events:none;opacity:0;transition:opacity .35s}body.opening .env-flap{transform:rotateX(-180deg)}body.opening .envelope{animation:1.15s forwards envelopeSettle}.click-hint{letter-spacing:.18em;text-transform:uppercase;color:#74828e;text-align:center;margin-top:18px;font-family:Arial,Helvetica,sans-serif;font-size:.74rem}.monogram{color:currentColor;place-items:center;width:88px;height:88px;display:inline-grid}.monogram.small{width:58px;height:58px}.monogram.hero-mark{color:#fff;width:108px;height:108px;margin-bottom:10px}.monogram-svg{width:100%;height:100%;overflow:visible}.monogram-svg text{fill:currentColor;font-family:"Bodoni 72",Bodoni MT,Didot,Times New Roman,serif}.monogram-svg .stroke{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.monogram-svg .soft{opacity:.62}.monogram-svg .heart{fill:currentColor;stroke:none}.hero{color:var(--charcoal);background:radial-gradient(circle at 50% 8%,#7f95a821,#0000 26%),linear-gradient(#f9f7f3 0%,#eef3f6 100%);overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:linear-gradient(#5d718509 1px,#0000 1px),linear-gradient(90deg,#5d718509 1px,#0000 1px);background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000a6,#0000 88%);mask-image:linear-gradient(#000000a6,#0000 88%)}.hero-inner{text-align:left;z-index:1;grid-template-columns:.9fr 1.1fr;align-items:center;gap:54px;width:min(1080px,100%);display:grid;position:relative}.chapter-copy{max-width:510px}.chapter-number{letter-spacing:.22em;text-transform:uppercase;color:var(--dusty-blue-deep);margin-bottom:16px;font-family:Arial,Helvetica,sans-serif;font-size:.7rem}.chapter-copy h2{color:var(--ink);margin-bottom:18px;font-size:clamp(2.7rem,6.4vw,5.6rem);font-weight:400;line-height:.98}.chapter-copy .intro-line{color:#596168;margin-bottom:14px;font-size:clamp(1.1rem,2vw,1.32rem);line-height:1.9}.chapter-copy .micro-copy{color:#73808b;max-width:440px;margin-bottom:24px;font-size:.96rem;line-height:1.8}.chapter-action{color:var(--dusty-blue-deep);letter-spacing:.15em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8;border:1px solid #5d71852e;border-radius:999px;align-items:center;gap:10px;padding:14px 20px;font-family:Arial,Helvetica,sans-serif;font-size:.74rem;font-weight:700;display:inline-flex;box-shadow:0 12px 28px #5d718514}.chapter-action .arrow{transition:transform .25s}.chapter-action:hover .arrow{transform:translate(4px)}.memory-page{place-items:center;min-height:610px;display:grid;position:relative}.memory-paper{aspect-ratio:4/5.35;background:#fffefb;border:1px solid #5d718514;border-radius:6px;width:min(92%,470px);padding:22px 22px 76px;position:relative;overflow:hidden;transform:rotate(-1.4deg);box-shadow:0 28px 70px #242b3129}.memory-paper:before{content:"";pointer-events:none;background:linear-gradient(#ffffff1a,#7f95a806),radial-gradient(circle at 18% 12%,#7f95a80f,#0000 24%);position:absolute;inset:0}.memory-paper:after{content:"";pointer-events:none;border:1px solid #7f95a814;position:absolute;inset:12px}.memory-paper img{object-fit:cover;object-position:center;filter:saturate(.92)contrast(.98);z-index:1;width:100%;height:calc(100% - 52px);display:block;position:relative}.memory-caption{z-index:2;color:#5f6870;justify-content:space-between;align-items:end;gap:14px;display:flex;position:absolute;bottom:22px;left:22px;right:22px}.memory-caption strong{color:var(--dusty-blue-deep);margin-bottom:4px;font-size:1.02rem;font-style:italic;font-weight:400;display:block}.memory-caption small{letter-spacing:.14em;text-transform:uppercase;color:#84909a;font-family:Arial,Helvetica,sans-serif;font-size:.67rem;display:block}.memory-stamp{width:112px;height:112px;color:var(--dusty-blue-deep);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:4;background:#f8f6f2e0;border:1px solid #5d71852e;border-radius:50%;place-items:center;display:grid;position:absolute;top:42px;right:-14px;transform:rotate(8deg);box-shadow:0 12px 30px #5d718514}.memory-stamp span{border:1px dashed #5d718538;border-radius:50%;position:absolute;inset:9px}.memory-stamp .monogram{width:66px;height:66px}.memory-thread{background:linear-gradient(#5d718559,#0000);width:1px;height:120px;position:absolute;bottom:-70px;left:50%}@media (width<=980px){.hero-inner{text-align:center;grid-template-columns:1fr;gap:30px}.chapter-copy{margin:0 auto}.chapter-copy .micro-copy{margin-left:auto;margin-right:auto}.memory-page{min-height:500px}}@media (width<=720px){.memory-page{min-height:430px}.memory-paper{width:min(88vw,390px);padding:16px 16px 66px}.memory-caption{bottom:17px;left:16px;right:16px}.memory-stamp{width:92px;height:92px;right:-4px}.memory-stamp .monogram{width:54px;height:54px}}.ghost{opacity:0;transition:opacity .9s,transform .9s;transform:translateY(24px)}.ghost.show{opacity:1;transform:translateY(0)}.content-card{grid-template-columns:1.02fr .98fr;align-items:center;gap:40px;width:min(1120px,100%);display:grid}.photo-panel{border-radius:var(--radius-xl);min-height:620px;box-shadow:var(--shadow-soft);background:linear-gradient(#ebf1f5,#d8e0e7);padding:18px;position:relative;overflow:hidden}.photo-sheet{background:#fff;border-radius:22px;padding:16px 16px 76px;position:absolute;inset:18px;transform:rotate(-1.8deg);box-shadow:0 24px 55px #242b3126}.photo-sheet img{object-fit:cover;border-radius:16px;width:100%;height:calc(100% - 50px);display:block}.photo-sheet .sheet-note{color:#69727a;justify-content:space-between;gap:12px;font-size:.95rem;display:flex;position:absolute;bottom:18px;left:20px;right:20px}.copy-panel{padding:10px 4px}.copy-panel h3{color:var(--ink);margin-bottom:18px;font-size:clamp(2.2rem,5vw,4.2rem);font-weight:400;line-height:1.05}.copy-panel p{color:#5a636b;margin-bottom:14px;font-size:1.1rem;line-height:1.92}.quote{border-left:2px solid var(--dusty-blue);color:var(--dusty-blue-deep);margin:18px 0 22px;padding-left:16px;font-size:1.08rem;font-style:italic;line-height:1.85}.divider{color:var(--dusty-blue-deep);align-items:center;gap:14px;margin-bottom:18px;display:flex}.divider:before,.divider:after{content:"";opacity:.22;background:currentColor;width:min(88px,18vw);height:1px}.years-rail{background:linear-gradient(#7f95a81f,#c9cdd31a);border:1px solid #7f95a824;border-radius:22px;margin-top:24px;padding:18px 16px;box-shadow:0 12px 28px #5d71850f}.years-head{letter-spacing:.16em;text-transform:uppercase;color:#72808b;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-family:Arial,Helvetica,sans-serif;font-size:.74rem;display:flex}.years-dots{grid-template-columns:repeat(13,1fr);gap:9px;display:grid}.dot{text-align:center}.dot:before{content:"";background:linear-gradient(#d2d7dd,#eceff2);border-radius:50%;width:13px;height:13px;margin:0 auto 8px;transition:all .3s;display:block}.dot span{color:#78838d;font-family:Arial,Helvetica,sans-serif;font-size:.66rem;display:block}.dot.active:before{background:linear-gradient(180deg, var(--dusty-blue), var(--dusty-blue-deep));transform:scale(1.08);box-shadow:0 0 0 5px #7f95a824}.dot.active span{color:var(--dusty-blue-deep);font-weight:700}.bridge{min-height:82svh}.bridge-card{border-radius:var(--radius-xl);text-align:center;width:min(980px,100%);box-shadow:var(--shadow-soft);background:linear-gradient(#ffffffe0,#fffffff5),linear-gradient(135deg,#7f95a81f,#c9cdd31a);border:1px solid #7f95a824;padding:clamp(28px,5vw,56px)}.bridge-card h3{margin-bottom:16px;font-size:clamp(2.1rem,5vw,4rem);font-weight:400;line-height:1.08}.bridge-card p{color:#5a636b;max-width:780px;margin:0 auto 12px;font-size:1.12rem;line-height:1.95}.line-stack{gap:10px;margin-top:10px;display:grid}.line{opacity:0;color:var(--dusty-blue-deep);font-size:clamp(1.25rem,2.6vw,1.95rem);font-style:italic;transition:opacity .8s,transform .8s;transform:translateY(18px)}.line-stack.play .line{opacity:1;transform:translateY(0)}.line-stack.play .line:nth-child(2){transition-delay:.18s}.line-stack.play .line:nth-child(3){transition-delay:.36s}.proposal{color:#fff;background:linear-gradient(#1e23283d,#1e2328a3),url(/assets/wedding-bd7599e83f32.jpg) 50%/cover no-repeat}.proposal-card{grid-template-columns:.96fr 1.04fr;align-items:stretch;gap:34px;width:min(1120px,100%);display:grid}.proposal-photo{border-radius:var(--radius-xl);min-height:520px;box-shadow:var(--shadow-strong);border:1px solid #ffffff2e;position:relative;overflow:hidden}.proposal-photo:before{content:"";background:linear-gradient(#0000 58%,#171c206b),url(/assets/wedding-bd7599e83f32.jpg) 50%/cover no-repeat;position:absolute;inset:0}.proposal-copy{border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-strong);background:#151a1e4d;border:1px solid #ffffff2e;flex-direction:column;justify-content:center;padding:34px 30px;display:flex}.proposal-copy h3{margin:10px 0 16px;font-size:clamp(2.2rem,5vw,4.1rem);font-weight:400;line-height:1.04}.proposal-copy p{color:#fffffff0;margin-bottom:12px;font-size:1.08rem;line-height:1.92}.proposal-copy .eyebrow{color:#ffffffd1}.invite-wrap{justify-items:center;gap:28px;width:min(1060px,100%);display:grid}.invite-intro{text-align:center;max-width:760px}.invite-intro h3{color:var(--ink);margin:10px 0 14px;font-size:clamp(2.2rem,5vw,4.1rem);font-weight:400;line-height:1.05}.invite-intro p{color:#5a636b;font-size:1.08rem;line-height:1.9}.invite-card{border-radius:var(--radius-xl);width:min(920px,100%);box-shadow:var(--shadow-soft);background:linear-gradient(#fffffff0,#fffffffc),linear-gradient(135deg,#7f95a81f,#c9cdd31a);border:1px solid #7f95a824;padding:28px;overflow:hidden}.invite-grid{grid-template-columns:1.03fr .97fr;align-items:stretch;gap:24px;display:grid}.invite-main h4{color:var(--ink);margin:12px 0 14px;font-size:clamp(2rem,4vw,3.4rem);font-weight:400;line-height:1.04}.invite-main p{color:#5d666f;margin-bottom:14px;font-size:1.04rem;line-height:1.85}.label{color:var(--dusty-blue-deep);letter-spacing:.16em;text-transform:uppercase;background:#7f95a81f;border-radius:999px;padding:8px 12px;font-family:Arial,Helvetica,sans-serif;font-size:.7rem;font-weight:700;display:inline-block}.names{color:var(--dusty-blue-deep);text-shadow:0 8px 22px #52627c1a;margin:18px 0 16px;font-size:clamp(2.8rem,5vw,4.15rem);line-height:1.08}.amp{color:var(--silver-gray);margin:0 10px;font-size:.72em;font-style:normal;display:inline-block}.details{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px;display:grid}.detail{background:#7f95a814;border:1px solid #7f95a81a;border-radius:18px;padding:16px}.detail small{text-transform:uppercase;letter-spacing:.14em;color:#78838d;margin-bottom:8px;font-family:Arial,Helvetica,sans-serif;font-size:.66rem;display:block}.detail strong{color:var(--charcoal);font-size:1rem;line-height:1.6;display:block}.invite-side{background:linear-gradient(#7f95a81a,#c9cdd314);border-radius:24px;min-height:400px;padding:16px}.side-window{text-align:center;background:linear-gradient(#ffffffeb,#fffffffa);border:1px solid #7f95a81f;border-radius:20px;place-items:center;width:100%;height:100%;min-height:368px;padding:24px;display:grid;position:relative;overflow:hidden}.side-window:before{content:"";border:1px dashed #7f95a847;border-radius:16px;position:absolute;inset:16px}.side-window h5{color:var(--dusty-blue-deep);margin:12px 0 10px;font-size:clamp(1.8rem,3.8vw,2.8rem);font-weight:400;line-height:1.08}.side-window p{color:#66707a;max-width:280px;font-size:.98rem;line-height:1.8}.tiny-line{color:#85909a;margin-top:12px;font-style:italic}.rsvp-strip{background:linear-gradient(135deg,#7f95a81f,#c9cdd31a);border:1px solid #7f95a824;border-radius:22px;flex-wrap:wrap;justify-content:space-between;gap:14px;width:min(920px,100%);padding:18px 22px;display:flex;box-shadow:0 10px 24px #5d71850f}.rsvp-strip strong{color:var(--ink);font-size:1rem}.rsvp-strip span{color:#66707a;font-size:.97rem;line-height:1.7}@keyframes envelopeSettle{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}@media (width<=980px){.gate-wrap,.content-card,.proposal-card,.invite-grid{grid-template-columns:1fr}.gate-copy{text-align:center}.gate-copy p{margin-left:auto;margin-right:auto}.envelope-stage{min-height:500px}.photo-panel{min-height:520px}.proposal-photo{min-height:420px}}@media (width<=720px){.section{padding:24px 16px}.envelope{width:min(94vw,450px)}.seal-button,.monogram.hero-mark{width:92px;height:92px}.photo-panel{min-height:430px}.photo-sheet{padding:12px 12px 66px}.photo-sheet img{height:calc(100% - 44px)}.photo-sheet .sheet-note{font-size:.86rem;bottom:14px;left:16px;right:16px}.years-dots{grid-template-columns:repeat(4,1fr)}.details{grid-template-columns:1fr}.invite-card{padding:18px}}.gate{isolation:isolate;background:radial-gradient(at 16% 18%,#ffffffeb 0 8%,#0000 30%),radial-gradient(at 88% 78%,#7f95a829,#0000 32%),linear-gradient(145deg,#f7f4ee 0%,#edf2f5 52%,#e4ebf0 100%)}.gate:before,.gate:after{content:"";aspect-ratio:1;pointer-events:none;opacity:.75;z-index:0;border:1px solid #5d718517;border-radius:50% 0 50% 50%;width:min(34vw,430px);position:absolute}.gate:before{top:-22%;left:-15%;transform:rotate(28deg)}.gate:after{bottom:-25%;right:-13%;transform:rotate(202deg)}.gate-grain{opacity:.9;mix-blend-mode:multiply;background-image:repeating-linear-gradient(92deg,#4c586305 0 1px,#0000 1px 4px),repeating-linear-gradient(2deg,#ffffff26 0 1px,#0000 1px 5px);background-size:auto}.gate-copy h1{letter-spacing:-.035em;text-wrap:balance}.gate-copy p:first-of-type{color:#4f5a63;font-size:1.12rem}.gate-note{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff6b;border:1px solid #5d718524;border-radius:999px;align-items:center;gap:11px;padding:11px 15px;display:inline-flex}.gate-note:before{content:"";background:var(--dusty-blue);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 5px #7f95a81f}.envelope-stage:before{content:"";filter:blur(30px);background:#2a343c2b;border-radius:50%;width:min(88%,510px);height:58px;position:absolute;bottom:12%;left:50%;transform:translate(-50%)}.envelope{aspect-ratio:1.42;filter:drop-shadow(0 18px 19px #242b311f);perspective:1300px;width:min(92vw,540px);transform-style:preserve-3d}.envelope:hover{transform:translateY(-7px)rotate(.15deg)}.env-back{background:repeating-linear-gradient(96deg,#4c586306 0 1px,#0000 1px 5px),linear-gradient(165deg,#f8f6f0 0%,#eef1f2 57%,#dfe6ea 100%);border:1px solid #4d5b672e;border-radius:7px 7px 13px 13px;box-shadow:inset 0 1px #fffffff2,inset 0 -12px 24px #5a697511}.env-back:before{opacity:.68;background-color:#0000;background-image:linear-gradient(137deg,#0000 49.6%,#56697829 49.8% 50.15%,#0000 50.35%),linear-gradient(223deg,#0000 49.6%,#56697829 49.8% 50.15%,#0000 50.35%);background-position:0,100%;background-repeat:no-repeat;background-size:50% 100%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.env-back:after{content:"";pointer-events:none;border-radius:5px 5px 10px 10px;position:absolute;inset:5px;box-shadow:inset 0 0 24px #4857630e}.env-letter{background:repeating-linear-gradient(92deg,#50585c05 0 1px,#0000 1px 4px),linear-gradient(#fffefb,#fbfaf5);border:1px solid #5d718521;border-radius:3px;height:87%;padding:32px 26px 24px;top:8%;left:7.5%;right:7.5%;box-shadow:0 13px 28px #242b3129}.env-letter:before{border:1px solid #7f95a833;border-radius:1px;inset:13px}.env-letter:after{content:"ONE CHOICE  •  XIII YEARS  •  FOREVER";color:#5d71858c;letter-spacing:.2em;font:600 .52rem/1 Arial,sans-serif;position:absolute;bottom:13px;left:0;right:0}.env-bottom{clip-path:polygon(0 0,100% 0,50% 73%);filter:drop-shadow(0 2px 1px #3946511f);background:repeating-linear-gradient(96deg,#404e5905 0 1px,#0000 1px 5px),linear-gradient(#f5f5f1 0%,#dfe6ea 100%);border-radius:7px 7px 13px 13px}.env-front{border-radius:7px 7px 13px 13px}.env-front:before{clip-path:polygon(0 0,50% 72%,100% 0,100% 100%,0 100%);background:repeating-linear-gradient(96deg,#404e5905 0 1px,#0000 1px 5px),linear-gradient(165deg,#f7f7f3 0%,#e8ecee 53%,#d8e1e6 100%);border-top:1px solid #47576424;height:67%;box-shadow:inset 0 -14px 25px #5a69750f}.env-front:after{content:"";pointer-events:none;background:linear-gradient(35deg,#0000 49.7%,#4e5e6a17 50%,#0000 50.3%) 0 100%/50% 67% no-repeat,linear-gradient(-35deg,#0000 49.7%,#4e5e6a17 50%,#0000 50.3%) 100% 100%/50% 67% no-repeat;position:absolute;inset:0}.env-flap{filter:drop-shadow(0 3px 2px #2a37411f);border-radius:7px 7px 13px 13px}.env-flap:before{clip-path:polygon(0 0,100% 0,50% 94%);background:repeating-linear-gradient(96deg,#404e5905 0 1px,#0000 1px 5px),linear-gradient(170deg,#f8f7f2 0%,#e9edef 55%,#d4dee4 100%);border-bottom:1px solid #4858652e;height:69%}.seal-button{color:#dfe8ed;clip-path:polygon(50% 0%,61% 4%,72% 2%,81% 10%,92% 14%,96% 26%,100% 37%,97% 49%,100% 61%,94% 72%,91% 84%,79% 89%,70% 98%,58% 96%,47% 100%,36% 96%,24% 98%,16% 89%,5% 84%,5% 71%,0% 61%,3% 49%,0% 37%,5% 26%,8% 14%,20% 10%,29% 2%,40% 4%);background:radial-gradient(circle at 30% 24%,#ffffff47 0 3%,#0000 4%),radial-gradient(circle at 68% 72%,#2a3a4842 0 10%,#0000 26%),radial-gradient(circle at 34% 34%,#9aafbf 0%,#71899c 45%,#536b7d 82%,#42596b 100%);border:1px solid #384a586b;width:104px;height:104px;top:57%;box-shadow:0 5px #405769,0 14px 24px #2c3a4659,inset 0 2px 3px #ffffff52,inset 0 -4px 8px #25344152}.seal-button:before{content:"";pointer-events:none;border:1px solid #e1ecf27a;border-radius:50%;position:absolute;inset:12px;box-shadow:inset 0 0 0 3px #2f435229,0 1px 1px #ffffff38}.seal-button:after{content:"ONE CHOICE  •  ONE FOREVER";letter-spacing:.12em;color:#ebf2f69e;text-shadow:0 1px 1px #22313d59;pointer-events:none;place-items:end center;padding-bottom:16px;font:700 .42rem/1 Arial,sans-serif;display:grid;position:absolute;inset:0}.seal-button .monogram{filter:drop-shadow(0 1px #ffffff38)drop-shadow(0 -1px #20303c6b);width:70px;height:70px;transform:translateY(-4px)}.seal-button:hover{transform:translate(-50%,-54%)rotate(-2deg);box-shadow:0 5px #405769,0 19px 30px #2c3a4661,inset 0 2px 3px #ffffff52,inset 0 -4px 8px #25344152}.seal-button:focus-visible{outline-offset:7px;outline:3px solid #5d718559}body.opening .seal-button{transform:translate(-50%,-54%)scale(.82)}body.opening .env-flap{filter:drop-shadow(0 -2px 2px #2a374114)}body.opening .env-letter{transform:translateY(-50%)scale(1.045)}.click-hint{color:#667680;margin-top:24px}.click-hint:before,.click-hint:after{content:"·";color:#91a2ae;padding:0 10px}@media (width<=980px){.gate-wrap{gap:14px}.envelope-stage{min-height:470px}}@media (width<=720px){.gate-wrap{padding:12px 8px 20px}.gate-copy p:nth-of-type(2){display:none}.gate-note{letter-spacing:.12em;font-size:.64rem}.envelope-stage{min-height:380px;padding-top:0}.envelope{width:min(92vw,430px)}.seal-button{width:84px;height:84px}.seal-button .monogram{width:58px;height:58px}.seal-button:before{inset:10px}.seal-button:after{padding-bottom:13px;font-size:.34rem}.env-letter{padding:24px 18px 18px}.env-letter:after{font-size:.42rem}}@media (prefers-reduced-motion:reduce){.envelope,.env-flap,.env-letter,.seal-button{transition-duration:.01ms!important;animation-duration:.01ms!important}}.seal-button:after{display:none}.env-letter{opacity:0;transition:transform .82s cubic-bezier(.2,.9,.2,1),opacity .24s;transform:translateY(30%)scale(.985)}body.flap-cleared .env-flap{opacity:0;visibility:hidden;pointer-events:none}@media (width<=720px){.gate-wrap{grid-template-columns:1fr;place-items:center;width:100%;min-height:100svh;padding:18px 10px}.gate-copy{display:none}.envelope-stage{align-content:center;width:100%;min-height:min(100svh,720px);padding:28px 0}.hero .memory-page,.hero .micro-copy{display:none}.hero-inner{gap:0}.chapter-copy{padding-block:30px}}.gate-wrap{grid-template-columns:1fr;place-items:center;width:min(760px,100%);min-height:100svh;padding:24px 18px}.gate-copy{display:none}.envelope-stage{align-content:center;width:100%;min-height:min(100svh,760px);padding:32px 0}.hero .memory-page,.hero .micro-copy{display:none}.hero-inner{text-align:center;grid-template-columns:1fr;max-width:760px}.chapter-copy{margin-inline:auto}.env-back{background:repeating-linear-gradient(96deg,#404e5906 0 1px,#0000 1px 5px),linear-gradient(165deg,#f3f5f5 0%,#e1e7ea 57%,#cbd6dc 100%);border-color:#5569783d}.env-bottom{background:repeating-linear-gradient(96deg,#404e5906 0 1px,#0000 1px 5px),linear-gradient(#edf2f4 0%,#c5d2db 100%)}.env-front:before{background:repeating-linear-gradient(96deg,#404e5906 0 1px,#0000 1px 5px),linear-gradient(165deg,#eef2f3 0%,#d5dfe5 52%,#bdcbd5 100%)}.env-flap:before{background:repeating-linear-gradient(96deg,#404e5906 0 1px,#0000 1px 5px),linear-gradient(170deg,#edf2f4 0%,#d0dce4 55%,#afc1ce 100%);border-bottom-color:#51687942}.click-hint{color:var(--dusty-blue-deep)}.env-flap{transition:transform .94s cubic-bezier(.22,.68,.2,1),opacity .22s}.env-letter{will-change:transform, opacity;transition:transform 1.18s cubic-bezier(.18,.78,.18,1),opacity .52s;transform:translateY(28%)scale(.985)}body.opening .env-letter{opacity:0;transform:translateY(28%)scale(.985)}body.letter-out .env-letter{z-index:3;opacity:1;transform:translateY(-48%)scale(1.035)}body.flap-cleared .env-letter{z-index:7}@media (width<=720px){.gate-wrap{padding:16px 10px}.envelope-stage{min-height:100svh;padding:24px 0}}.invite-nav{z-index:250;scrollbar-width:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8f6f2e0;border-bottom:1px solid #5d71851f;justify-content:center;gap:6px;padding:10px 14px;display:flex;position:sticky;top:0;overflow-x:auto}.invite-nav::-webkit-scrollbar{display:none}.invite-nav a{color:#667782;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;flex:none;padding:9px 13px;font:700 .64rem/1 Arial,sans-serif;transition:color .2s,background .2s}.invite-nav a:hover,.invite-nav a:focus-visible{color:var(--dusty-blue-deep);background:#7f95a821;outline:none}.full-section{padding:clamp(78px,10vw,132px) 20px;scroll-margin-top:60px;position:relative}.full-section.tint{background:radial-gradient(circle at 12% 12%,#7287a621,#0000 27%),linear-gradient(#dde0e6,#f7f4f2)}.section-shell{width:min(1120px,100%);margin:0 auto}.section-heading{text-align:center;max-width:740px;margin:0 auto clamp(34px,6vw,58px)}.section-heading h3{color:var(--ink);letter-spacing:-.025em;margin-bottom:16px;font-size:clamp(2.4rem,6vw,4.7rem);font-weight:400;line-height:1.02}.section-heading p{color:#65717a;font-size:1.05rem;line-height:1.85}.event-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.event-card,.location-card,.gift-card,.rsvp-panel{background:#ffffffc4;border:1px solid #5d718524;position:relative;overflow:hidden;box-shadow:0 24px 60px #34424d17}.event-card{border-radius:28px;min-height:390px;padding:clamp(28px,4vw,46px)}.event-card:before{content:attr(data-number);color:#7f95a81a;font-size:8rem;line-height:1;position:absolute;top:3px;right:20px}.card-kicker,.field-label{color:var(--dusty-blue-deep);letter-spacing:.18em;text-transform:uppercase;font:700 .66rem/1.2 Arial,sans-serif}.event-card h4,.location-card h4,.gift-card h4{color:var(--ink);margin:24px 0 10px;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:400;position:relative}.event-card .placeholder-value,.location-card .placeholder-value{color:#6a7b87;letter-spacing:.1em;text-transform:uppercase;background:#7f95a81a;border-radius:8px;margin-top:6px;padding:7px 10px;font:700 .68rem/1 Arial,sans-serif;display:inline-block}.event-card p,.location-card p,.gift-card p{color:#66717a;line-height:1.8}.event-meta{border-top:1px solid #5d71851f;gap:14px;margin-top:30px;padding-top:22px;display:grid}.event-meta div{justify-content:space-between;gap:18px;display:flex}.event-meta span{color:#88939b;letter-spacing:.12em;text-transform:uppercase;font:700 .66rem/1.4 Arial,sans-serif}.event-meta strong{color:#536675;text-align:right;font-weight:400}.day-timeline{background:#5d71851f;border:1px solid #5d718524;border-radius:24px;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:18px;display:grid;overflow:hidden}.timeline-stop{text-align:center;background:#f9f8f5;padding:24px}.timeline-stop strong{color:var(--dusty-blue-deep);margin-bottom:7px;font-size:1.05rem;font-weight:400;display:block}.timeline-stop span{color:#7b8790;letter-spacing:.12em;text-transform:uppercase;font:700 .62rem/1.4 Arial,sans-serif}.entourage-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.entourage-group{background:linear-gradient(145deg,#f7f4f2fa,#a9b8d333);border:1px solid #7287a63d;border-radius:26px;padding:0 22px 22px;overflow:hidden;box-shadow:0 16px 38px #52627c1a}.entourage-group summary{cursor:pointer;color:#52627c;letter-spacing:.01em;background:0 0;border-bottom:1px solid #7287a633;justify-content:space-between;align-items:center;gap:16px;padding:20px 2px 17px;font-size:1.3rem;font-weight:400;list-style:none;transition:color .2s;display:flex}.entourage-group summary:hover{color:#26364d}.entourage-group summary:focus-visible{outline-offset:-3px;outline:3px solid #a9b8d3}.entourage-group summary::-webkit-details-marker{display:none}.entourage-group summary:after{content:"+";color:#52627c;background:#a9b8d375;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font:400 1.08rem/1 Arial,sans-serif;display:grid}.entourage-group[open] summary:after{content:"−"}.entourage-list{color:#68747d;grid-template-columns:1fr 1fr;gap:14px;padding:18px 0 0;display:grid}.entourage-list div{background:#ffffffc7;border:1px solid #7287a640;border-left:4px solid #7287a6;border-radius:7px 20px 20px 7px;min-width:0;padding:46px 18px 18px;position:relative;box-shadow:0 9px 22px #52627c12}.entourage-list small{color:#f7f4f2;letter-spacing:.12em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;background:#52627c;border-radius:6px 0 11px;max-width:calc(100% - 16px);padding:9px 14px;font:700 .6rem/1 Arial,sans-serif;display:block;position:absolute;top:0;left:-1px;overflow:hidden}.entourage-list ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.entourage-list li{color:#52627c;font-size:1.03rem;line-height:1.45}#dress-code{padding-block:clamp(60px,8vw,94px)}.wedding-palette{color:#fff;background:linear-gradient(145deg,#52627c,#7287a6);border-radius:28px;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);align-items:center;gap:clamp(26px,5vw,58px);margin-bottom:16px;padding:clamp(24px,4vw,38px);display:grid;box-shadow:0 22px 52px #52627c2e}.palette-intro .card-kicker{color:#ffffffb3}.palette-intro h4{margin:14px 0 9px;font-size:clamp(1.9rem,3.5vw,2.8rem);font-weight:400}.palette-intro p{color:#ffffffc7;line-height:1.6}.palette-swatches{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.palette-swatch{text-align:center;min-width:0}.palette-swatch>span{aspect-ratio:1;border:5px solid #ffffff3d;border-radius:50%;width:min(74px,100%);margin:0 auto 8px;display:block;box-shadow:0 10px 22px #242d3a2e}.palette-swatch strong{color:#fff;min-height:2.4em;font-size:.78rem;font-weight:400;line-height:1.2;display:block}.palette-swatch em{color:#26364d;letter-spacing:.12em;text-transform:uppercase;background:#a9b8d3;border:1px solid #ffffff80;border-radius:999px;min-width:68px;margin-top:6px;padding:7px 10px;font:800 .56rem/1 Arial,sans-serif;display:inline-block;box-shadow:0 5px 14px #242d3a33}.palette-swatch.is-sponsor em{color:#52627c;background:#f7f4f2;border-color:#dde0e6;box-shadow:0 0 0 3px #dde0e640,0 6px 16px #242d3a3d}.guest-attire-heading{text-align:center;max-width:640px;margin:clamp(34px,5vw,48px) auto 18px}.guest-attire-heading h4{color:var(--ink);margin:8px 0 7px;font-size:clamp(2rem,4.5vw,3rem);font-weight:400}.guest-attire-heading p{color:#66717a;line-height:1.55}.attire-visual-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.attire-visual-card{background:#f7f4f2f0;border:1px solid #52627c24;border-radius:28px;flex-direction:column;min-width:0;padding:clamp(20px,3vw,28px);display:flex;overflow:hidden;box-shadow:0 18px 44px #52627c1a}.attire-visual-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.attire-visual-heading h4{color:var(--ink);margin-top:7px;font-size:clamp(1.9rem,3.5vw,2.65rem);font-weight:400}.attire-visual-heading>span{color:var(--dusty-blue-deep);background:var(--dusty-blue-soft);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:7px 10px;font:700 .55rem/1 Arial,sans-serif}.attire-figure-wrap{background:linear-gradient(#dde0e694,#f7f4f226);border-radius:18px;margin:16px -8px 14px;padding:8px 4px 0}.attire-figure-wrap img{object-fit:contain;width:auto;max-width:92%;height:auto;max-height:250px;margin-inline:auto;display:block}.attire-visual-card>p{color:#66717a;line-height:1.58}.attire-tags{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:14px;display:flex}.attire-tags span{color:#52627c;letter-spacing:.08em;text-transform:uppercase;background:#a9b8d380;border:1px solid #52627c1f;border-radius:999px;padding:7px 9px;font:700 .55rem/1 Arial,sans-serif}.sponsor-attire-card{background:linear-gradient(145deg,#dde0e6e0,#f7f4f2f5);border:1px solid #52627c29;border-radius:28px;margin-top:16px;padding:clamp(22px,3.5vw,32px);overflow:hidden;box-shadow:0 18px 44px #52627c1a}.sponsor-attire-card .attire-visual-heading>span{color:#f7f4f2;background:#52627c;min-width:74px}.sponsor-figure-wrap{background:#f7f4f2;border-radius:18px;margin:16px 0 14px;overflow:hidden}.sponsor-figure-wrap img{object-fit:contain;width:auto;max-width:88%;height:auto;max-height:400px;margin-inline:auto;display:block}.sponsor-guidance{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sponsor-guidance div{background:#f7f4f2bd;border:1px solid #52627c1a;border-radius:14px;padding:12px 16px}.sponsor-guidance strong{color:#52627c;margin-bottom:4px;font-size:1rem;font-weight:400;display:block}.sponsor-guidance span{color:#66717a;line-height:1.45}.sponsor-note{color:#52627c;text-align:center;margin-top:11px;font-style:italic}.gallery-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:130px;gap:14px;display:grid}.gallery-slot{color:#6b7c88;text-align:center;background:radial-gradient(circle at 20% 10%,#ffffffb3,#0000 34%),linear-gradient(145deg,#dfe7ec,#c2d0da);border:1px solid #5d718521;border-radius:20px;place-items:center;display:grid;position:relative;overflow:hidden}.gallery-slot:first-child,.gallery-slot:nth-child(4){grid-area:span 3/span 7}.gallery-slot:nth-child(2),.gallery-slot:nth-child(3),.gallery-slot:nth-child(5),.gallery-slot:nth-child(6){grid-area:span 2/span 5}.gallery-slot:nth-child(4){grid-column:span 7}.gallery-slot:before{content:attr(data-number);color:#ffffff7a;font-size:4.5rem;position:absolute;top:8px;right:16px}.gallery-slot strong{margin-bottom:7px;font-size:1.15rem;font-weight:400;display:block;position:relative}.gallery-slot small{letter-spacing:.13em;text-transform:uppercase;font:700 .6rem/1 Arial,sans-serif;position:relative}.location-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.location-grid.single{grid-template-columns:minmax(0,680px);justify-content:center}.location-card{border-radius:28px;padding:clamp(28px,5vw,48px)}.map-preview{background:#e8edef;border:1px solid #52627c24;border-radius:18px;height:190px;margin:28px 0 22px;overflow:hidden;box-shadow:0 14px 32px #52627c1a}.map-preview iframe{border:0;width:100%;height:100%;display:block}.location-map-link{color:#fff;background:var(--dusty-blue-deep);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;gap:12px;padding:13px 18px;font:700 .63rem/1 Arial,sans-serif;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 12px 24px #52627c2e}.location-map-link:hover{transform:translateY(-2px);box-shadow:0 16px 30px #52627c3d}.placeholder-action{color:#84919a;letter-spacing:.11em;text-transform:uppercase;background:#f1f3f3;border:1px solid #5d718524;border-radius:999px;padding:12px 16px;font:700 .63rem/1 Arial,sans-serif;display:inline-flex}.gift-card{text-align:center;border-radius:30px;max-width:880px;margin:0 auto;padding:clamp(32px,6vw,62px)}.gift-details{border-top:1px solid #5d71851f;margin-top:28px}.gift-details summary{cursor:pointer;color:var(--dusty-blue-deep);letter-spacing:.14em;text-transform:uppercase;padding:20px 0 0;font:700 .68rem/1 Arial,sans-serif;list-style:none}.gift-details summary::-webkit-details-marker{display:none}.gift-placeholder{color:#74818a;background:#7f95a817;border-radius:16px;margin-top:18px;padding:20px;line-height:1.7}.rsvp-section{background:linear-gradient(145deg,#dde0e6,#f7f4f2 48%,#a9b8d3)}.rsvp-panel{border-radius:32px;max-width:880px;margin:0 auto;padding:clamp(26px,6vw,60px)}.rsvp-panel h3{color:var(--ink);text-align:center;margin:16px 0 12px;font-size:clamp(2.5rem,6vw,4.6rem);font-weight:400}.rsvp-intro{color:#69757e;text-align:center;max-width:590px;margin:0 auto 32px;line-height:1.8}.rsvp-form{gap:20px;display:grid}.attendance-options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.choice-card{position:relative}.choice-card input{opacity:0;pointer-events:none;position:absolute}.choice-card label{cursor:pointer;color:#5f707c;text-align:center;background:#fff;border:1px solid #5d718529;border-radius:16px;height:100%;padding:20px;transition:all .2s;display:block}.choice-card label strong{color:var(--ink);margin-bottom:6px;font-size:1.08rem;font-weight:400;display:block}.choice-card input:checked+label{border-color:var(--dusty-blue-deep);background:#7f95a821;box-shadow:0 0 0 3px #7f95a81f}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{gap:8px;display:grid}.attendance-extra[hidden]{display:none}.form-field.full{grid-column:1/-1}.form-field input,.form-field select,.form-field textarea{width:100%;color:var(--ink);font:inherit;background:#ffffffe6;border:1px solid #5d718529;border-radius:12px;padding:14px 15px}.form-field textarea{resize:vertical;min-height:110px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--dusty-blue);outline:2px solid #5d718547}.rsvp-submit{cursor:pointer;color:#fff;background:linear-gradient(180deg, var(--dusty-blue), var(--dusty-blue-deep));letter-spacing:.14em;text-transform:uppercase;border:0;border-radius:999px;justify-self:center;min-width:230px;padding:16px 24px;font:700 .7rem/1 Arial,sans-serif;box-shadow:0 14px 30px #4a5c6c38}.rsvp-note{color:#8a969e;text-align:center;font:.72rem/1.5 Arial,sans-serif}.rsvp-success{text-align:center;padding:40px 20px;display:none}.rsvp-success.show{display:block}.rsvp-success h4{color:var(--ink);margin:16px 0 10px;font-size:2.2rem;font-weight:400}.rsvp-success p{color:#69757e;line-height:1.8}.closing-section{text-align:center;color:#fff;background:linear-gradient(145deg,#52627c,#7287a6);place-items:center;min-height:70svh;display:grid}.closing-inner{max-width:760px;padding:90px 20px}.closing-inner h3{margin:16px 0 22px;font-size:clamp(2.8rem,7vw,5.8rem);font-weight:400;line-height:1}.closing-inner p{color:#fffc;font-size:1.1rem;line-height:1.9}.closing-couple-name{color:#f7f4f2;text-shadow:0 12px 30px #232d3c47;justify-content:center;align-items:baseline;gap:.22em;font-size:clamp(3rem,5.5vw,4.8rem);line-height:1;display:flex}.closing-couple-name em{color:#dde0e6;font-size:.58em;font-style:normal;font-weight:400}.closing-date{letter-spacing:.2em;text-transform:uppercase;border-top:1px solid #ffffff4d;margin-top:34px;padding-top:18px;font:700 .68rem/1 Arial,sans-serif;display:inline-block}@media (width<=760px){.invite-nav{justify-content:flex-start}.full-section{padding-inline:16px}.event-grid,.entourage-grid,.attire-visual-grid,.location-grid,.form-grid{grid-template-columns:1fr}.event-card{min-height:auto}.day-timeline{grid-template-columns:1fr}.timeline-stop{text-align:left}.wedding-palette,.attendance-options,.sponsor-guidance{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.gallery-slot:nth-child(n){grid-area:span 1/span 1}.gallery-slot:first-child{grid-column:span 2}.entourage-list{grid-template-columns:1fr}.palette-swatches{grid-template-columns:repeat(5,minmax(48px,1fr));padding-bottom:6px;overflow-x:auto}.form-field.full{grid-column:auto}}.hero{display:none}#story.section,.bridge.section,.proposal.section,#invitation.section{min-height:auto;padding-block:clamp(56px,7vw,88px)}#story .content-card{gap:32px}#story .photo-panel{min-height:510px}#story .copy-panel p{font-size:1.03rem;line-height:1.75}#story .quote{margin-block:14px 18px}#story .years-rail{margin-top:18px}.bridge.section{padding-block:clamp(34px,5vw,54px)}.bridge-card{width:min(800px,100%);padding:clamp(26px,4vw,40px)}.bridge-card h3{margin-bottom:10px;font-size:clamp(2rem,4.3vw,3.4rem)}.bridge-card p{font-size:1rem;line-height:1.7}.line-stack{margin-top:8px}.line{font-size:clamp(1.15rem,2vw,1.55rem)}.proposal-card{gap:32px}.proposal-photo{min-height:430px}.proposal-copy h3{margin-bottom:14px;font-size:clamp(2.3rem,5vw,4rem)}.proposal-copy p{font-size:1.02rem;line-height:1.75}.invite-intro{margin-bottom:28px}.invite-intro h3{font-size:clamp(2.2rem,5vw,3.9rem)}.invite-intro p{line-height:1.7}.invite-card{width:min(840px,100%);margin-inline:auto;padding:clamp(20px,3vw,32px)}.invite-grid{grid-template-columns:1fr}.invite-side{display:none}.full-section{padding-block:clamp(58px,7vw,90px)}.section-heading{margin-bottom:clamp(28px,4vw,40px)}.section-heading h3{margin-bottom:12px;font-size:clamp(2.25rem,5vw,4.1rem)}.section-heading p{font-size:1rem;line-height:1.7}.event-card{min-height:auto;padding:clamp(26px,3.5vw,38px)}.event-card h4,.location-card h4,.gift-card h4{margin-top:18px}.event-meta{margin-top:22px;padding-top:18px}.timeline-stop{padding-block:19px}.entourage-group summary{padding-block:18px}.wedding-palette{padding:clamp(24px,4vw,38px)}.attire-visual-card{padding:clamp(20px,3vw,28px)}.gallery-grid{grid-auto-rows:108px}.location-card{padding:clamp(26px,4vw,38px)}.map-preview{height:150px;margin-block:22px 18px}.gift-card{padding:clamp(28px,5vw,48px)}.rsvp-panel{padding:clamp(26px,5vw,48px)}.closing-section{min-height:54svh}.closing-inner{padding-block:68px}@media (width<=760px){#story.section,.proposal.section,#invitation.section{padding-block:48px}#story .content-card{gap:22px}#story .photo-panel{min-height:350px}#story .copy-panel{padding-inline:4px}#story .copy-panel h3{font-size:2.25rem}#story .copy-panel p{font-size:.97rem;line-height:1.68}#story .quote{font-size:.98rem;line-height:1.6}#story .years-rail{padding:14px 12px}.bridge.section{padding-block:28px}.bridge-card{border-radius:22px;padding:24px 18px}.bridge-card h3{font-size:2rem}.bridge-card p{font-size:.94rem}.proposal-card{gap:18px}.proposal-photo{min-height:275px}.proposal-copy{padding:24px 4px 4px}.proposal-copy h3{font-size:2.25rem}.proposal-copy p{font-size:.96rem;line-height:1.65}.invite-intro{margin-bottom:22px}.invite-intro h3{font-size:2.2rem}.invite-intro p{font-size:.96rem}.invite-card{border-radius:22px;padding:14px}.invite-main{padding:20px 14px}.invite-main h4{font-size:2rem}.side-window{min-height:330px}.full-section{padding:46px 16px}.section-heading{margin-bottom:25px}.section-heading h3{font-size:2.2rem}.section-heading p{font-size:.94rem;line-height:1.6}.event-grid,.location-grid{gap:12px}.event-card,.location-card{border-radius:20px;padding:24px 20px}.event-card:before{font-size:5.5rem}.event-card h4,.location-card h4{font-size:1.75rem}.event-card p,.location-card p{line-height:1.62}.event-meta{gap:10px;margin-top:18px}.day-timeline{border-radius:16px;grid-template-columns:repeat(3,1fr)}.timeline-stop{text-align:center;padding:14px 8px}.timeline-stop strong{font-size:.82rem}.timeline-stop span{font-size:.5rem}.entourage-grid{gap:9px}.entourage-group{border-radius:21px;padding:0 14px 14px}.entourage-group summary{letter-spacing:.01em;padding:16px 2px 14px;font-size:1.12rem}.entourage-list{gap:10px;padding:14px 0 0}.entourage-list div{padding:43px 15px 15px}.entourage-list li{font-size:.98rem}.wedding-palette,.attire-visual-card{border-radius:21px;padding:20px 16px}.palette-intro h4{margin-top:14px;font-size:1.9rem}.palette-swatches{margin-top:6px}.attire-visual-heading{align-items:flex-start}.attire-visual-heading h4{font-size:2rem}.attire-visual-heading>span{white-space:normal;text-align:center}.sponsor-attire-card{border-radius:21px;padding:20px 16px}.attire-figure-wrap img{max-width:96%;max-height:230px}.sponsor-figure-wrap img{max-width:96%;max-height:320px}.gallery-grid{grid-auto-rows:120px;gap:9px}.gallery-slot{border-radius:14px}.gallery-slot:before{font-size:3.2rem}.map-preview{height:145px;margin-block:18px 15px}.gift-card{border-radius:22px;padding:26px 20px}.gift-card h4{font-size:1.9rem}.rsvp-panel{border-radius:22px;padding:24px 16px}.rsvp-panel h3{font-size:2.3rem}.rsvp-intro{margin-bottom:24px}.closing-section{min-height:auto}.closing-inner{padding-block:58px}.closing-inner h3{font-size:2.5rem}}.hero{min-height:min(72svh,720px);padding-block:clamp(54px,8vw,78px);scroll-margin-top:58px;display:flex}.hero-inner{text-align:center;grid-template-columns:1fr;gap:0;width:min(760px,100%)}.hero .chapter-copy{max-width:680px;margin-inline:auto}.hero .chapter-copy h2{font-size:clamp(2.8rem,6.2vw,5rem)}.hero .intro-line{max-width:610px;margin-inline:auto}.hero .chapter-action{margin-top:8px}@media (width<=760px){.hero{min-height:min(68svh,620px);padding:48px 18px}.hero .chapter-copy h2{font-size:clamp(2.65rem,12vw,3.65rem)}.hero .intro-line{font-size:1rem;line-height:1.72}}.folio-gate{z-index:5000;background:radial-gradient(circle at 18% 12%,#ffffffe6,#0000 28%),radial-gradient(circle at 84% 88%,#52627c2e,#0000 30%),linear-gradient(145deg,#f7f4f2,#dde0e6 54%,#a9b8d3);place-items:center;padding:16px;transition:opacity .5s,visibility .5s;display:grid;position:fixed;inset:0;overflow:hidden}body.site-ready .folio-gate{opacity:0;visibility:hidden;pointer-events:none}.music-toggle{z-index:2600;color:#f7f4f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;letter-spacing:.12em;text-transform:uppercase;background:#52627ceb;border:1px solid #f7f4f257;border-radius:999px;align-items:center;gap:9px;padding:10px 14px 10px 10px;font:700 .58rem/1 Arial,sans-serif;transition:transform .2s,background .2s,opacity .3s;display:inline-flex;position:fixed;bottom:18px;right:18px;box-shadow:0 12px 30px #242d3a38}.music-toggle:hover{background:#42526cfa;transform:translateY(-2px)}.music-toggle:focus-visible{outline-offset:3px;outline:3px solid #a9b8d3}.music-toggle-icon{color:#52627c;background:#f7f4f2;border-radius:50%;place-items:center;width:27px;height:27px;font:400 1rem/1 Georgia,serif;display:grid}.music-toggle.is-playing .music-toggle-icon{animation:1.8s ease-in-out infinite musicPulse}@keyframes musicPulse{50%{transform:scale(1.09);box-shadow:0 0 0 5px #a9b8d333}}.folio-grain{pointer-events:none;opacity:.68;mix-blend-mode:multiply;background:repeating-linear-gradient(92deg,#46545e05 0 1px,#0000 1px 5px),repeating-linear-gradient(2deg,#ffffff2b 0 1px,#0000 1px 6px);position:absolute;inset:0}.folio-shell{z-index:1;background:linear-gradient(#f7f4f2,#dde0e6);border:1px solid #ffffffc2;grid-template-rows:minmax(0,1fr) auto;width:min(520px,100vw - 32px);height:min(780px,100svh - 32px);display:grid;position:relative;overflow:hidden;box-shadow:0 34px 90px #303e4933,0 8px 24px #303e491a,inset 0 0 0 1px #5d718514}.folio-stage{perspective:1400px;background:linear-gradient(#f7f4f2,#dde0e6);min-height:0;position:relative;overflow:hidden}.folio-inside{text-align:center;color:var(--ink);background:radial-gradient(circle at 50% 8%,#7287a61f,#0000 30%),repeating-linear-gradient(12deg,#52606a05 0 1px,#0000 1px 6px),linear-gradient(#f7f4f2,#f7f4f2);border:1px solid #5d718524;place-content:center;justify-items:center;padding:30px 24px;transition:transform 1.15s cubic-bezier(.22,.78,.22,1);display:grid;position:absolute;inset:18px;overflow:hidden;transform:scale(.975);box-shadow:inset 0 0 0 1px #ffffffb8}.folio-shell.opened .folio-inside{transform:scale(1)}.folio-inside-rule{pointer-events:none;border:1px solid #7287a63d;position:absolute;inset:13px}.folio-inside-mark{width:72px;height:72px;margin-bottom:15px}.folio-inside-kicker{color:var(--dusty-blue-deep);letter-spacing:.24em;text-transform:uppercase;margin-bottom:18px;font:700 .62rem/1 Arial,sans-serif}.folio-inside-names{color:#52627c;letter-spacing:0;text-shadow:0 10px 26px #52627c1c;max-width:430px;font-size:clamp(3rem,9vw,4.75rem);line-height:.82}.folio-inside-names span{color:#9aa7b0;margin:9px 0 5px;font-size:.42em;font-style:normal;display:block}.folio-inside p{color:#59656e;margin:26px 0 17px;font-size:clamp(1.15rem,3vw,1.45rem);line-height:1.55}.folio-inside-note{color:#83919a;letter-spacing:.18em;text-transform:uppercase;font:700 .58rem/1 Arial,sans-serif}.folio-panel{z-index:4;background:linear-gradient(#ffffff4d,#0000 36%),repeating-linear-gradient(10deg,#2d3f4d06 0 1px,#0000 1px 6px),linear-gradient(160deg,#f7f4f2,#dde0e6 48%,#a9b8d3);width:50%;transition:transform 1.04s cubic-bezier(.22,.78,.22,1),opacity .34s .72s;position:absolute;top:0;bottom:0;box-shadow:inset 0 0 0 1px #ffffff61}.folio-panel:before{content:"";opacity:.52;background:linear-gradient(132deg,#0000 48%,#4f63731f 49.5% 50.5%,#0000 52%);position:absolute;inset:0}.folio-panel-left{border-right:1px solid #485b6a2e;left:0}.folio-panel-right{border-left:1px solid #ffffff57;right:0}.folio-panel-right:before{transform:scaleX(-1)}.folio-centerline{z-index:5;background:#495d6d38;width:1px;transition:opacity .28s;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.folio-ribbon{z-index:5;pointer-events:none;background:linear-gradient(90deg,#52627c,#7287a6 48%,#52627c);height:3px;transition:transform .8s cubic-bezier(.22,.78,.22,1),opacity .34s;position:absolute;top:31%;box-shadow:0 1px #fff6,0 5px #5b718240}.folio-ribbon-left{width:calc(50% - 45px);left:0}.folio-ribbon-right{width:calc(50% - 45px);right:0}.folio-seal{z-index:7;cursor:pointer;color:#edf3f6;clip-path:polygon(50% 0%,61% 4%,72% 2%,81% 10%,92% 14%,96% 26%,100% 37%,97% 49%,100% 61%,94% 72%,91% 84%,79% 89%,70% 98%,58% 96%,47% 100%,36% 96%,24% 98%,16% 89%,5% 84%,5% 71%,0% 61%,3% 49%,0% 37%,5% 26%,8% 14%,20% 10%,29% 2%,40% 4%);background:radial-gradient(circle at 31% 24%,#ffffff45 0 3%,#0000 4%),radial-gradient(circle at 68% 72%,#23364442,#0000 28%),radial-gradient(circle at 34% 34%,#7287a6,#52627c 56%,#3f4d63 100%);border:1px solid #3448586b;border-radius:50%;place-items:center;width:104px;height:104px;padding:0;transition:transform .24s,filter .24s,opacity .3s;display:grid;position:absolute;top:31%;left:50%;transform:translate(-50%,-50%);box-shadow:0 5px #3f4d63,0 17px 26px #2a3b4857,inset 0 2px 3px #ffffff57,inset 0 -4px 8px #23344252}.folio-seal:before{content:"";border:1px solid #e8f1f680;border-radius:50%;position:absolute;inset:12px;box-shadow:inset 0 0 0 3px #2b405029}.folio-seal .monogram{filter:drop-shadow(0 1px #fff3)drop-shadow(0 -1px #1c2d3a73);width:70px;height:70px}.folio-seal:hover{filter:brightness(1.04);transform:translate(-50%,-53%)scale(1.045)}.folio-seal:focus-visible{outline-offset:7px;outline:3px solid #5d718561}.folio-front-names{z-index:6;color:#52627c;text-align:center;pointer-events:none;justify-items:center;width:90%;transition:opacity .28s;display:grid;position:absolute;top:61%;left:50%;transform:translate(-50%,-50%)}.folio-front-names span{letter-spacing:0;text-shadow:0 1px #ffffffa8,0 9px 24px #3c4f5e1c;font-size:clamp(3.25rem,10.5vw,5.1rem);line-height:.74}.folio-front-names em{color:#8b9aa4;margin:11px 0 8px;font-size:1.45rem;font-style:normal;line-height:1}.folio-front-copy{z-index:6;color:#5d7180;text-align:center;text-transform:uppercase;pointer-events:none;border-top:1px solid #4d637340;border-bottom:1px solid #4d63732e;width:calc(100% - 58px);padding:13px 10px 12px;transition:opacity .28s;position:absolute;bottom:2.5%;left:50%;transform:translate(-50%)}.folio-front-copy>strong{color:#f7f4f2;letter-spacing:.22em;text-shadow:0 1px 1px #2834432e;background:linear-gradient(135deg,#52627cdb,#7287a6d1);border:1px solid #ffffff4d;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:8px 16px 7px;font:700 .72rem/1 Arial,sans-serif;display:inline-flex;box-shadow:0 5px 14px #52627c24,inset 0 1px #ffffff2e}.folio-front-copy>span{color:#5f7180;letter-spacing:.3em;margin-top:9px;font:700 .59rem/1 Arial,sans-serif;display:block}.folio-cover-countdown{background:linear-gradient(145deg,#f7f4f2b8,#a9b8d36b);border:1px solid #52627c4d;border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));max-width:340px;margin:13px auto 0;padding:11px 8px 10px;font-style:normal;display:grid;box-shadow:0 9px 24px #52627c24,inset 0 1px #ffffffb3}.folio-front-copy .folio-cover-countdown>span{letter-spacing:0;border-left:1px solid #52627c40;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:36px;margin:0;display:flex}.folio-front-copy .folio-cover-countdown>span:first-child{border-left:0}.folio-cover-countdown b{color:#3f4d63;font:600 1.35rem/1 var(--font-editorial);font-variant-numeric:tabular-nums;text-shadow:0 1px #ffffffb8}.folio-front-copy .folio-cover-countdown small{color:#667883;letter-spacing:.14em;text-transform:uppercase;margin-top:6px;font:700 .46rem/1 Arial,sans-serif;display:block}.folio-cover-countdown.is-complete{justify-content:center;align-items:baseline;gap:10px;display:flex}.folio-cover-countdown.is-complete b{font-size:1.15rem}.folio-front-copy .folio-cover-countdown.is-complete small{margin:0}.folio-foot{z-index:8;color:#667883;text-align:center;background:#faf9f5e0;padding:17px 18px 21px;position:relative}.folio-foot strong{letter-spacing:.24em;text-transform:uppercase;font:700 .68rem/1 Arial,sans-serif;display:block}.folio-foot span{color:#8a98a1;margin-top:8px;font-size:.82rem;display:block}.folio-shell.opened .folio-panel-left{opacity:.55;transform:translate(-103%)}.folio-shell.opened .folio-panel-right{opacity:.55;transform:translate(103%)}.folio-shell.opened .folio-ribbon-left{opacity:0;transform:translate(-120%)}.folio-shell.opened .folio-ribbon-right{opacity:0;transform:translate(120%)}.folio-shell.opened .folio-centerline,.folio-shell.opened .folio-seal,.folio-shell.opened .folio-front-names,.folio-shell.opened .folio-front-copy{opacity:0;pointer-events:none}.folio-shell.opened .folio-foot{opacity:.5}@media (width<=560px){.folio-gate{padding:10px}.folio-shell{width:min(440px,100vw - 20px);height:min(690px,100svh - 20px)}.folio-inside{padding:20px 14px;inset:12px}.folio-inside-mark{width:58px;height:58px;margin-bottom:11px}.folio-inside-kicker{margin-bottom:13px;font-size:.54rem}.folio-inside-names{font-size:clamp(3rem,13vw,3.85rem)}.folio-inside p{margin-block:20px 13px;font-size:1.05rem}.folio-seal{width:88px;height:88px}.folio-seal:before{inset:10px}.folio-seal .monogram{width:58px;height:58px}.folio-ribbon-left,.folio-ribbon-right{width:calc(50% - 39px)}.folio-front-names span{font-size:clamp(3.35rem,16vw,4.35rem)}.folio-front-copy{width:calc(100% - 36px);bottom:2%}.folio-front-copy>strong{letter-spacing:.2em;min-height:26px;padding:7px 13px 6px;font-size:.65rem}.folio-front-copy>span{font-size:.52rem}.folio-cover-countdown{max-width:300px;margin-top:10px;padding:10px 6px 9px}.folio-cover-countdown b{font-size:1.2rem}.folio-foot{padding:14px 14px 16px}}@media (height<=650px){.folio-inside-mark{width:48px;height:48px;margin-bottom:7px}.folio-inside-kicker{margin-bottom:9px}.folio-inside-names{font-size:clamp(2.6rem,9vh,3.25rem)}.folio-inside p{margin-block:12px 9px;font-size:.95rem}.folio-front-names span{font-size:clamp(3rem,11.5vh,3.8rem)}.folio-front-copy{padding-block:8px 7px;bottom:1.5%}.folio-front-copy>span{margin-top:5px}.folio-front-copy>strong{min-height:25px;padding:6px 12px;font-size:.61rem}.folio-cover-countdown{border-radius:11px;margin-top:7px;padding:7px 5px 6px}.folio-front-copy .folio-cover-countdown>span{min-height:29px}.folio-cover-countdown b{font-size:1rem}.folio-front-copy .folio-cover-countdown small{margin-top:4px;font-size:.38rem}.folio-foot{padding-block:10px 12px}}@media (prefers-reduced-motion:reduce){.folio-panel,.folio-ribbon,.folio-inside,.folio-seal{transition-duration:.01ms!important}}.story-chapter{position:relative}.beginning-chapter{background:linear-gradient(#f7f4f2c7,#dde0e680)}.growing-chapter{background:linear-gradient(145deg,#a9b8d33d,#f7f4f2f5 60%)}.wedding-chapter{background:linear-gradient(#f7f4f2,#a9b8d329);border-top:1px solid #7287a62e}.story-phase{color:#52627c;text-align:left;align-items:center;gap:12px;margin:10px 0 18px;display:inline-flex}.story-phase>span{color:#f7f4f2;letter-spacing:.1em;background:#52627c;border:1px solid #52627c33;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;font:700 .68rem/1 Arial,sans-serif;display:grid;box-shadow:0 8px 20px #52627c29}.story-phase div{gap:4px;display:grid}.story-phase small{color:#7f8c96;letter-spacing:.16em;text-transform:uppercase;font:700 .55rem/1 Arial,sans-serif}.story-phase strong{color:#52627c;font-size:1.32rem;font-weight:500;line-height:1}.story-phase.is-light>span{color:#52627c;background:#f7f4f2;border-color:#ffffff61}.story-phase.is-light small{color:#ffffff9e}.story-phase.is-light strong{color:#fff}.proposal-copy .story-phase{margin-top:18px}.invite-intro .story-phase{justify-content:center}.years-caption{color:#7c8993;letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;gap:12px;margin-top:13px;font:700 .52rem/1.25 Arial,sans-serif;display:flex}.years-caption span:nth-child(2){color:#52627c}.years-dots .dot:first-child,.years-dots .dot:last-child{transform:scale(1.12)}.years-dots .dot:first-child:before,.years-dots .dot:last-child:before{outline-offset:4px;outline:1px solid #52627c4d}.wedding-keyfacts{color:#f7f4f2;background:linear-gradient(125deg,#52627c,#7287a6);border:1px solid #ffffff47;border-radius:26px;grid-template-columns:1.05fr .8fr 1.15fr;margin-bottom:20px;display:grid;overflow:hidden;box-shadow:0 20px 46px #52627c33}.wedding-countdown{color:#52627c;background:#ffffffc7;border:1px solid #52627c29;border-radius:24px;grid-template-columns:minmax(180px,.85fr) minmax(0,1.35fr);align-items:stretch;gap:0;margin-bottom:20px;display:grid;overflow:hidden;box-shadow:0 16px 40px #52627c1a}.countdown-intro{background:linear-gradient(145deg,#a9b8d347,#dde0e659);flex-direction:column;justify-content:center;padding:23px 26px;display:flex}.countdown-intro>span{color:#7287a6;letter-spacing:.16em;text-transform:uppercase;font:700 .55rem/1 Arial,sans-serif}.countdown-intro>strong{color:#2b3443;margin-top:9px;font-size:clamp(1.25rem,2.3vw,1.75rem);font-weight:500;line-height:1.08}.countdown-units{grid-template-columns:repeat(4,minmax(0,1fr));font-style:normal;display:grid}.countdown-units>span{border-left:1px solid #52627c1f;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:105px;display:flex}.countdown-units strong{color:#52627c;font-variant-numeric:tabular-nums;font-size:clamp(1.55rem,3vw,2.25rem);font-weight:500;line-height:1}.countdown-units small{color:#84909a;letter-spacing:.12em;text-transform:uppercase;margin-top:9px;font:700 .52rem/1 Arial,sans-serif}.wedding-countdown.is-complete{grid-template-columns:minmax(210px,.8fr) 1.2fr}.countdown-complete{justify-content:center;align-items:center;gap:17px;padding:22px 26px;display:flex}.countdown-complete>span{width:52px;height:52px;font-family:var(--font-luxury);border:1px solid #52627c33;border-radius:50%;flex:none;place-items:center;display:grid}.countdown-complete p{color:#66737d;margin:0;font-size:.95rem}.wedding-keyfacts>div{border-right:1px solid #ffffff2e;flex-direction:column;justify-content:center;min-width:0;min-height:150px;padding:25px 27px;display:flex}.wedding-keyfacts>div:last-child{border-right:0}.wedding-keyfacts span{color:#ffffffa8;letter-spacing:.16em;text-transform:uppercase;font:700 .57rem/1 Arial,sans-serif}.wedding-keyfacts strong{color:#fff;margin:10px 0 4px;font-size:clamp(1.65rem,3vw,2.55rem);font-weight:500;line-height:.98}.wedding-keyfacts em{color:#ffffffc7;font-size:.92rem;font-style:normal}.wedding-keyfacts .keyfact-date strong{font-size:clamp(2rem,3.7vw,3.05rem)}.detail.is-primary{color:#f7f4f2;background:linear-gradient(135deg,#52627c,#7287a6);border-color:#52627c38;box-shadow:0 10px 22px #52627c24}.detail.is-primary small{color:#ffffffad}.detail.is-primary strong{color:#fff;font-size:1.04rem}.event-meta{gap:10px}.event-meta>div{background:#a9b8d329;border:1px solid #7287a626;border-radius:14px;padding:13px 14px}.event-meta strong{color:#52627c;font-size:1.08rem;line-height:1.2}.timeline-stop strong{color:#52627c}.timeline-stop span{color:#3f5069;font-size:.68rem}.entourage-section{background:radial-gradient(circle at 85% 10%,#a9b8d366,#0000 25%),linear-gradient(#dde0e6,#f7f4f2 34%);border-top:1px solid #52627c33;position:relative}.entourage-section:before{content:"";background:linear-gradient(90deg,#0000,#7287a6,#0000);width:min(920px,86%);height:4px;position:absolute;top:0;left:50%;transform:translate(-50%)}.section-transition{color:#52627c;text-align:center;background:#f7f4f2cc;border:1px solid #52627c29;border-radius:999px;width:fit-content;margin:0 auto clamp(36px,6vw,62px);padding:11px 24px 13px;display:grid;box-shadow:0 10px 26px #52627c14}.section-transition span{letter-spacing:.15em;text-transform:uppercase;font:700 .52rem/1 Arial,sans-serif}.section-transition strong{margin-top:5px;font-size:1.05rem;font-weight:500}.entourage-section .section-heading{margin-bottom:clamp(32px,5vw,48px)}.location-keyline{color:#52627c;background:#a9b8d32e;border:1px solid #52627c29;border-radius:15px;justify-content:space-between;align-items:center;gap:15px;margin-top:18px;padding:14px 16px;display:flex}.location-keyline span{letter-spacing:.13em;text-transform:uppercase;font:700 .58rem/1 Arial,sans-serif}.location-keyline strong{text-align:right;font-size:1.08rem;font-weight:500}@media (width<=760px){.wedding-countdown,.wedding-countdown.is-complete{border-radius:21px;grid-template-columns:1fr}.countdown-intro{text-align:center;align-items:center;padding:20px 18px}.countdown-units{grid-template-columns:1fr 1fr}.countdown-units>span{border-top:1px solid #52627c1f;min-height:82px}.countdown-units>span:nth-child(odd){border-left:0}.countdown-units strong{font-size:1.7rem}.countdown-complete{padding:21px 18px}.story-phase{margin-bottom:15px}.story-phase>span{flex-basis:39px;width:39px;height:39px}.story-phase strong{font-size:1.14rem}.years-caption{letter-spacing:.06em;font-size:.45rem}.wedding-keyfacts{border-radius:21px;grid-template-columns:1fr 1fr}.wedding-keyfacts>div{min-height:116px;padding:19px 17px}.wedding-keyfacts>div:nth-child(2){border-right:0}.wedding-keyfacts>div:last-child{border-top:1px solid #ffffff2e;grid-column:1/-1;min-height:105px}.wedding-keyfacts strong{font-size:1.55rem}.wedding-keyfacts .keyfact-date strong{font-size:1.75rem}.event-meta>div{padding:11px 12px}.event-meta strong{font-size:.98rem}.section-transition{margin-bottom:32px;padding-inline:20px}.location-keyline{flex-direction:column;align-items:flex-start}.location-keyline strong{text-align:left}.music-toggle{border-radius:50%;justify-content:center;width:46px;height:46px;padding:0;bottom:13px;right:13px}.music-toggle>span:last-child{display:none}.music-toggle-icon{width:30px;height:30px}}.prelisted-rsvp-section{scroll-margin-top:76px}.prelisted-rsvp-section .rsvp-panel{background:radial-gradient(circle at 50% 0,#a9b8d333,#0000 31%),#f7f4f2f0;border:1px solid #52627c1f;box-shadow:0 34px 90px #52627c21}.prelisted-eyebrow{text-align:center;margin-bottom:10px;display:block}.prelisted-state,.prelisted-intro{text-align:center;max-width:650px;margin:0 auto}.prelisted-state>span:not(.prelisted-loader){color:var(--dusty-blue-deep);letter-spacing:.16em;text-transform:uppercase;font:700 .68rem/1 Arial,sans-serif}.prelisted-state h3,.prelisted-intro h3{margin:15px 0 12px}.prelisted-state p,.prelisted-intro>p{color:#69757e;margin:0 auto;line-height:1.7}.prelisted-loader{border:3px solid #7287a638;border-top-color:#52627c;border-radius:50%;width:38px;height:38px;margin:14px auto 24px;animation:.8s linear infinite prelistedSpin;display:block}@keyframes prelistedSpin{to{transform:rotate(360deg)}}.prelisted-deadline{background:#dde0e68a;border:1px solid #52627c24;border-radius:999px;align-items:center;gap:12px;margin:24px auto 28px;padding:11px 15px;display:inline-flex}.prelisted-deadline span{color:#72809a;letter-spacing:.11em;text-transform:uppercase;font:700 .62rem/1 Arial,sans-serif}.prelisted-deadline strong{color:#2b3443;font-size:.92rem;font-weight:500}.prelisted-deadline.closed{background:#e7d9d96b;border-color:#8267672e}.prelisted-reservation,.prelisted-group{max-width:710px;margin:0 auto}.prelisted-reservation{background:#ffffffdb;border:1px solid #52627c2e;border-radius:30px;position:relative;overflow:hidden;box-shadow:0 24px 60px #34435b21}.prelisted-reservation>header{color:#fff;background:radial-gradient(circle at 80% 14%,#ffffff26,#0000 28%),linear-gradient(128deg,#7e94b3 0%,#647a9a 48%,#465872 100%);justify-content:space-between;align-items:center;gap:28px;min-height:172px;padding:29px 32px;display:flex;position:relative;overflow:hidden}.prelisted-reservation>header:before{content:"";pointer-events:none;border:1px solid #fff3;border-radius:21px 21px 10px 10px;position:absolute;inset:10px}.prelisted-reservation>header:after{content:"";pointer-events:none;border:1px solid #ffffff1f;border-radius:50%;width:230px;height:230px;position:absolute;bottom:-135px;right:-74px;box-shadow:0 0 0 24px #ffffff09,0 0 0 48px #ffffff06}.prelisted-reservation>header span,.prelisted-member-heading span{letter-spacing:.15em;text-transform:uppercase;font:700 .62rem/1 Arial,sans-serif}.reservation-guest{z-index:1;min-width:0;position:relative}.prelisted-reservation>header h4{margin:10px 0 8px;font-size:clamp(2.4rem,5vw,3.65rem);font-weight:400;line-height:.95}.prelisted-reservation>header p{color:#ffffffb8;max-width:360px;margin:0;font-size:.9rem}.reserved-seat-count{z-index:2;text-align:center;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#f7f4f21f;border:1px solid #ffffff7a;border-radius:18px;flex:0 0 132px;align-content:center;justify-items:center;min-height:112px;padding:13px;display:grid;position:relative;box-shadow:inset 0 0 0 5px #ffffff0d,0 14px 30px #1c273926}.reserved-seat-count strong{color:#fff;font-size:3.45rem;font-weight:400;line-height:.82;display:block}.reserved-seat-count span{color:#ffffffdb;letter-spacing:.13em;margin-top:12px;font-size:.54rem}.prelisted-response-form{background:linear-gradient(90deg,#0000,#a9b8d31a,#0000) top/100% 1px no-repeat,#ffffffb3;gap:21px;padding:29px 32px 32px;display:grid}.prelisted-attendance{border:0;min-width:0;margin:0;padding:0}.prelisted-attendance legend{color:#52627c;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;font:700 .68rem/1 Arial,sans-serif}.prelisted-attendance>div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.prelisted-attendance label{cursor:pointer;background:linear-gradient(145deg,#ffffffeb,#f7f4f2b8);border:1px solid #52627c29;border-radius:18px;align-items:center;min-width:0;min-height:87px;padding:17px 17px 17px 54px;transition:border-color .25s,background .25s,transform .25s,box-shadow .25s;display:flex;position:relative;box-shadow:0 8px 22px #52627c0e}.prelisted-attendance label:before{content:"";background:#fff;border:1px solid #52627c57;border-radius:50%;width:20px;height:20px;position:absolute;left:18px;box-shadow:inset 0 0 0 5px #fff}.prelisted-attendance label:hover{transform:translateY(-2px);box-shadow:0 12px 28px #52627c17}.prelisted-attendance label.selected{background:linear-gradient(145deg,#dce6f4d1,#f7f4f2e6);border-color:#7287a6;box-shadow:inset 0 0 0 1px #7287a62e,0 12px 28px #52627c17}.prelisted-attendance label.selected:before{background:#52627c;border-color:#52627c}.prelisted-attendance input{opacity:0;width:1px;height:1px;position:absolute}.prelisted-attendance strong{color:#2b3443;font-size:1.18rem;font-weight:500;display:block}.prelisted-attendance small{color:#77838c;margin-top:4px;line-height:1.4;display:block}.prelisted-field-grid{grid-template-columns:.7fr 1.3fr;gap:12px;display:grid}.prelisted-response-form .form-field{margin:0}.prelisted-response-form .form-field input,.prelisted-response-form .form-field select,.prelisted-response-form .form-field textarea{background:#ffffffe0}.wedding-wish-field textarea{min-height:130px}.prelisted-blessing{color:#52627c;cursor:pointer;background:linear-gradient(135deg,#fffc,#a9b8d329);border:1px solid #7287a633;border-left:3px solid #7287a6;border-radius:16px;grid-template-columns:auto 1fr;gap:12px;padding:15px;display:grid;box-shadow:0 10px 24px #52627c0f}.prelisted-companions{background:linear-gradient(145deg,#dce6f4b8,#f7f4f2e6);border:2px solid #7287a694;border-left:5px solid #52627c;border-radius:20px;min-width:0;margin:0;padding:21px 19px 18px;box-shadow:0 16px 34px #52627c1f}.prelisted-companions legend{color:#52627c;max-width:calc(100% - 8px);padding:0 8px}.prelisted-companions legend span{letter-spacing:.16em;text-transform:uppercase;font:700 .66rem/1 Arial,sans-serif}.prelisted-companions legend strong{color:#fff;letter-spacing:.1em;text-transform:uppercase;background:#52627c;border-radius:999px;margin-left:10px;padding:7px 10px;font:700 .52rem/1 Arial,sans-serif;display:inline-flex}.prelisted-companions>p{color:#66737d;margin:5px 0 16px;font-size:.91rem;line-height:1.55}.prelisted-companions>p b{color:#2b3443;margin-bottom:3px;font-size:1.05rem;font-weight:500;display:block}.prelisted-companions>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.prelisted-companions .companion-name-field{background:#ffffffeb;border:1px solid #52627c33;border-radius:16px;padding:14px;box-shadow:0 9px 22px #52627c14}.prelisted-companions .companion-name-field .field-label{color:#52627c}.prelisted-companions .companion-name-field input{background:#fff;border:2px solid #7287a6;min-height:58px;box-shadow:inset 0 0 0 3px #a9b8d31f}.prelisted-companions .companion-name-field input:focus{border-color:#52627c;outline:3px solid #7287a638}.companion-input-note{color:#75818b;font-size:.76rem;line-height:1.4}.prelisted-companions .prelisted-derived-count{color:var(--dusty-blue-deep);background:#ffffffa8;border:1px solid #52627c26;border-radius:13px;grid-column:1/-1;align-items:baseline;gap:9px;margin-top:6px;padding:12px 14px;display:flex}.prelisted-derived-count strong{font-family:var(--font-editorial);font-size:1.55rem;font-weight:500}.prelisted-derived-count span{color:#73808a;letter-spacing:.04em;font-size:.82rem}.prelisted-companion-summary{gap:5px;margin:18px auto 0;display:grid}.prelisted-companion-summary span{color:#7287a6;letter-spacing:.12em;text-transform:uppercase;font:700 .62rem/1 Arial,sans-serif}.prelisted-companion-summary strong{color:#3b4658;font-size:.96rem;font-weight:500}.prelisted-member-companions{color:#75818c;margin-top:8px;line-height:1.4;display:block}.prelisted-blessing input{accent-color:#52627c;width:18px;height:18px;margin-top:2px}.prelisted-blessing strong,.prelisted-blessing small{display:block}.prelisted-blessing strong{font-size:.94rem;font-weight:500}.prelisted-blessing small{color:#73808a;margin-top:4px;line-height:1.45}.blessing-confirmation{color:#52627c;text-align:left;background:#a9b8d321;border:1px solid #7287a63d;border-radius:15px;gap:5px;max-width:520px;margin:18px auto;padding:14px 17px;display:grid}.blessing-confirmation strong{font-size:.98rem;font-weight:500}.blessing-confirmation span{color:#6f7c87;font-size:.82rem;line-height:1.5}.blessing-confirmation.approved{color:#43604e;background:#d5e6da66;border-color:#53766238}.blessing-confirmation.warning{color:#755d3f;background:#eee5cf75;border-color:#8b704833}.prelisted-member.answered .blessing-confirmation{margin:12px 0 0;padding:11px 13px}.prelisted-member.answered .blessing-confirmation strong{font-size:.88rem}.prelisted-member.answered .blessing-confirmation span{font-size:.76rem}.prelisted-answer-summary{text-align:center;padding:26px 28px 29px}.prelisted-answer-summary p{color:#69757e;margin:18px auto;font-style:italic;line-height:1.6}.prelisted-success-message{background:linear-gradient(145deg,#ffffffeb,#a9b8d324);border:1px solid #52627c24;border-radius:22px;max-width:560px;margin:0 auto;padding:28px 24px 25px;box-shadow:0 16px 34px #52627c17}.prelisted-success-message>span{color:#7287a6;letter-spacing:.16em;text-transform:uppercase;font:700 .6rem/1 Arial,sans-serif}.prelisted-success-message h5{color:#2b3443;margin:11px 0 8px;font-size:clamp(1.65rem,3vw,2.15rem);font-weight:400}.prelisted-answer-summary .prelisted-success-message p{color:#66737d;max-width:440px;margin:0 auto 17px;font-size:.96rem;font-style:normal;line-height:1.58}.prelisted-success-message.compact{text-align:left;box-shadow:none;border-radius:14px;margin:10px 0 0;padding:14px 15px 15px}.prelisted-success-message.compact>span{font-size:.52rem}.prelisted-success-message.compact h5{margin:7px 0 5px;font-size:1.15rem}.prelisted-member .prelisted-success-message.compact p{color:#6f7a83;margin:0 0 11px;font-size:.8rem;font-style:normal;line-height:1.45}.prelisted-saved-wish{max-width:520px}.prelisted-answer-summary button,.prelisted-member button{color:#52627c;letter-spacing:.1em;text-underline-offset:4px;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font:700 .67rem/1 Arial,sans-serif;text-decoration:underline}.prelisted-status{color:#52627c;letter-spacing:.08em;text-transform:uppercase;background:#dde0e6;border-radius:999px;padding:8px 12px;font:700 .63rem/1.2 Arial,sans-serif;display:inline-flex}.prelisted-status.status-attending{color:#344760;background:#dce6f4}.prelisted-status.status-declined{color:#6b6262;background:#eee8e8}.prelisted-status.status-waitlisted{color:#675f3f;background:#eee8d2}.prelisted-progress{background:#ffffff9e;border:1px solid #52627c24;border-radius:16px;margin:0 0 24px;padding:16px 18px}.prelisted-progress span{color:#52627c;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px;font:700 .65rem/1 Arial,sans-serif;display:block}.prelisted-progress>div{background:#dde0e6;border-radius:999px;height:6px;overflow:hidden}.prelisted-progress i{border-radius:inherit;background:linear-gradient(90deg,#a9b8d3,#52627c);height:100%;transition:width .35s;display:block}.prelisted-member-section{margin-top:23px}.prelisted-subheading{color:#52627c;letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:0 3px 10px;font:700 .67rem/1 Arial,sans-serif;display:flex}.prelisted-subheading strong{color:#fff;background:#7287a6;border-radius:50%;place-items:center;width:25px;height:25px;font-size:.68rem;display:grid}.prelisted-member{background:#ffffffc2;border:1px solid #52627c26;border-radius:20px;margin-top:10px}.prelisted-member.answered{justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.prelisted-member h5{color:#2b3443;margin:0 0 7px;font-size:1.35rem;font-weight:400}.prelisted-member-heading{border-bottom:1px solid #52627c1c;justify-content:space-between;align-items:flex-start;gap:14px;padding:20px 24px;display:flex}.prelisted-member-heading span{color:#7287a6}.prelisted-member-heading h5{margin:7px 0 2px;font-size:1.65rem}.prelisted-member-heading small{color:#7c8790}.reserved-seat-inline{background:#a9b8d32b;border:1px solid #7287a633;border-radius:999px;align-items:baseline;gap:7px;margin-top:7px;padding:6px 10px;display:inline-flex}.reserved-seat-inline strong{color:#52627c;font-size:1.22rem;font-weight:500;line-height:1}.reserved-seat-inline small{color:#697891;letter-spacing:.1em;text-transform:uppercase;font:700 .54rem/1 Arial,sans-serif}.prelisted-member .prelisted-response-form{padding:20px 24px 24px}.prelisted-error{color:#7a4242;background:#f4e6e6;border-radius:12px;margin:0 24px 22px;padding:12px 14px;line-height:1.5}.prelisted-closed-note{color:#6e6666;text-align:center;background:#e7d9d973;border-radius:13px;max-width:650px;margin:22px auto 0;padding:13px 16px}.prelisted-closed-state{color:#52627c;background:linear-gradient(135deg,#dde0e680,#f7f4f2eb);border-top:1px solid #52627c1f;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:28px;display:grid}.prelisted-closed-mark{width:62px;height:62px;font-family:var(--font-luxury);letter-spacing:.04em;background:#ffffffb8;border:1px solid #52627c38;border-radius:50%;place-items:center;font-size:1.15rem;display:grid;box-shadow:inset 0 0 0 5px #a9b8d31f}.prelisted-closed-state strong{color:#2b3443;font-size:1.25rem;font-weight:500;display:block}.prelisted-closed-state p{color:#6f7a83;margin:7px 0 0;font-size:.93rem;line-height:1.55}.prelisted-closed-state.compact{border-radius:0 0 20px 20px;margin:0;padding:20px 24px 23px}.prelisted-closed-state.compact .prelisted-closed-mark{width:48px;height:48px;font-size:.95rem}.rsvp-gallery-link{color:#52627c;letter-spacing:.11em;text-transform:uppercase;justify-content:center;align-items:center;gap:9px;width:fit-content;margin:26px auto 0;font:700 .68rem/1 Arial,sans-serif;text-decoration:none;display:flex}.rsvp-gallery-link span{transition:transform .2s}.rsvp-gallery-link:hover span{transform:translate(4px)}.blessing-gallery-card{text-align:center;background:radial-gradient(circle at 50% 0,#ffffffe6,#0000 48%),linear-gradient(145deg,#ffffffd1,#dde0e6a8);border:1px solid #52627c2e;border-radius:26px;max-width:710px;margin:28px auto 0;padding:34px clamp(24px,6vw,58px);position:relative;overflow:hidden;box-shadow:0 18px 48px #52627c1a}.blessing-gallery-card:before,.blessing-gallery-card:after{content:"";border:1px solid #7287a62e;border-radius:50%;width:110px;height:110px;position:absolute}.blessing-gallery-card:before{top:-70px;left:-55px}.blessing-gallery-card:after{bottom:-70px;right:-55px}.blessing-gallery-ornament{color:#7287a6;font-size:1.5rem}.blessing-gallery-card>span{color:#7287a6;letter-spacing:.16em;text-transform:uppercase;margin-top:5px;font:700 .58rem/1 Arial,sans-serif;display:block}.blessing-gallery-card h4{color:#2b3443;margin:11px 0 10px;font-size:clamp(2rem,4vw,2.75rem);font-weight:400}.blessing-gallery-card p{color:#687581;max-width:560px;margin:0 auto;font-size:.96rem;line-height:1.65}.blessing-gallery-action{z-index:1;color:#fff;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,#7287a6,#52627c);border-radius:999px;justify-content:center;align-items:center;gap:10px;margin-top:22px;padding:13px 24px;font:700 .62rem/1 Arial,sans-serif;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex;position:relative;box-shadow:0 13px 28px #52627c33}.blessing-gallery-action:hover{transform:translateY(-2px);box-shadow:0 16px 34px #52627c42}.blessing-gallery-action b{font-size:.9rem;font-weight:400}.blessing-gallery-card>small{color:#87919a;margin-top:12px;font-size:.72rem;display:block}@media (width<=640px){.prelisted-rsvp-section .rsvp-panel{padding:24px 14px}.prelisted-state h3,.prelisted-intro h3{font-size:2.15rem}.prelisted-deadline{text-align:left;border-radius:15px;flex-direction:column;align-items:flex-start;gap:6px}.prelisted-reservation{border-radius:24px}.prelisted-reservation>header{flex-direction:column;align-items:stretch;gap:22px;min-height:0;padding:27px 23px 24px}.prelisted-reservation>header h4{font-size:clamp(2.35rem,13vw,3.15rem)}.reserved-seat-count{text-align:left;border-radius:15px;flex:none;justify-content:space-between;align-items:center;min-height:0;padding:14px 16px;display:flex}.reserved-seat-count strong{font-size:2.65rem}.reserved-seat-count span{margin:0;font-size:.56rem}.prelisted-response-form,.prelisted-member .prelisted-response-form{padding:22px 17px 23px}.prelisted-attendance>div,.prelisted-field-grid,.prelisted-companions>div{grid-template-columns:1fr}.prelisted-attendance label{min-height:78px;padding:14px 14px 14px 51px}.prelisted-member.answered{align-items:flex-start;padding:16px}.prelisted-member-heading{padding:17px 16px}.prelisted-member-heading h5{font-size:1.4rem}.prelisted-answer-summary{padding:22px 17px}.prelisted-companions{padding:20px 15px 16px}.prelisted-companions legend span,.prelisted-companions legend strong{width:max-content;display:flex}.prelisted-companions legend strong{margin:7px 0 0}.prelisted-companions .companion-name-field{padding:12px}.prelisted-closed-state{text-align:center;grid-template-columns:1fr;gap:13px;padding:24px 18px}.prelisted-closed-mark{margin:0 auto}.prelisted-closed-state.compact{padding:20px 17px 23px}.blessing-gallery-card{border-radius:22px;margin-top:20px;padding:30px 19px}.blessing-gallery-card p{font-size:.9rem}.blessing-gallery-action{width:100%;padding-inline:15px}}.memory-gallery-section{background:radial-gradient(circle at 9% 12%,#a9b8d34d,#0000 24%),linear-gradient(#f7f4f2,#eef1f4 52%,#f7f4f2);position:relative;overflow:clip}.memory-gallery-section:before{content:"";pointer-events:none;opacity:.35;background-image:repeating-linear-gradient(90deg,#0000 0 47px,#52627c09 48px);position:absolute;inset:0}.memory-gallery-section .section-shell{position:relative}.memory-gallery-section .section-heading{max-width:720px}.memory-gallery-section .gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;gap:12px;display:grid}.memory-gallery-section .gallery-slot,.memory-gallery-section .gallery-slot:nth-child(n){color:#fff;text-align:left;cursor:zoom-in;background:#52627c;border:1px solid #52627c24;border-radius:18px;grid-area:span 1/span 1;min-width:0;padding:0;display:block;position:relative;overflow:hidden;box-shadow:0 12px 28px #52627c1c}.memory-gallery-section .gallery-slot:first-child,.memory-gallery-section .gallery-slot:nth-child(6){grid-column:span 2}.memory-gallery-section .gallery-slot:before{display:none}.gallery-slot img{object-fit:contain;object-position:center;filter:saturate(.82)contrast(.96)brightness(.96);background:linear-gradient(145deg,#e8edf4,#52627c);width:100%;height:100%;transition:filter .45s;transform:none}.gallery-wash{background:linear-gradient(#52627c0d 20%,#232b3714 47%,#1e2531db 100%),linear-gradient(135deg,#7287a62e,#0000 48%);transition:opacity .4s;position:absolute;inset:0}.gallery-copy{z-index:2;position:absolute;bottom:16px;left:17px;right:17px}.gallery-copy small{color:#ffffffb3;letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px;font:700 .52rem/1 Arial,sans-serif;display:block}.gallery-copy strong{color:#fff;text-shadow:0 2px 18px #00000052;margin:0;font-size:clamp(1.03rem,1.6vw,1.35rem);font-weight:400;line-height:1.12;display:block}.gallery-open{z-index:3;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#52627c70;border:1px solid #ffffff7a;border-radius:50%;place-items:center;width:31px;height:31px;font:300 1rem/1 Arial,sans-serif;display:grid;position:absolute;top:12px;right:12px}.gallery-slot:hover img,.gallery-slot:focus-visible img{filter:saturate(.92)contrast()brightness();transform:none}.gallery-slot:hover .gallery-wash,.gallery-slot:focus-visible .gallery-wash{opacity:.86}.gallery-slot:focus-visible{outline-offset:3px;outline:3px solid #a9b8d3}.gallery-more{color:#52627c;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;background:#f7f4f2e0;border:1px solid #52627c33;border-radius:999px;margin:24px auto 0;padding:13px 21px;font:700 .61rem/1 Arial,sans-serif;display:flex;box-shadow:0 10px 24px #52627c14}.gallery-more:hover{color:#fff;background:#52627c}.gallery-lightbox{z-index:2000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#161c25e6;grid-template-columns:58px minmax(0,980px) 58px;justify-content:center;align-items:center;gap:14px;padding:28px;animation:.25s both galleryFadeIn;display:grid;position:fixed;inset:0}@keyframes galleryFadeIn{0%{opacity:0}}.lightbox-card{background:#f7f4f2;border:1px solid #fff3;border-radius:24px;grid-template-columns:minmax(0,1.45fr) minmax(280px,.72fr);width:100%;max-height:min(84vh,760px);animation:.38s cubic-bezier(.18,.72,.25,1) both galleryCardIn;display:grid;overflow:hidden;box-shadow:0 35px 90px #00000061}@keyframes galleryCardIn{0%{opacity:0;transform:translateY(16px)scale(.98)}}.lightbox-photo{background:#1d2430;min-width:0;min-height:0}.lightbox-photo img{object-fit:contain;width:100%;height:100%;max-height:min(84vh,760px);display:block}.lightbox-caption{background:linear-gradient(150deg,#a9b8d347,#0000 42%),#f7f4f2;flex-direction:column;justify-content:center;min-height:330px;padding:clamp(28px,4vw,52px);display:flex;position:relative}.lightbox-caption>span{color:#7287a6;letter-spacing:.16em;text-transform:uppercase;font:700 .6rem/1 Arial,sans-serif}.lightbox-caption h4{color:#252a2e;margin:14px 0 17px;font-size:clamp(2rem,3.6vw,3rem);font-weight:400;line-height:.98}.lightbox-caption p{color:#66717a;line-height:1.75}.lightbox-caption small{color:#8d99a1;letter-spacing:.15em;margin-top:25px;font:700 .55rem/1 Arial,sans-serif}.lightbox-close,.lightbox-nav{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f4f21a;border:1px solid #ffffff59;border-radius:50%;place-items:center;display:grid}.lightbox-close{z-index:3;width:42px;height:42px;font:300 1.8rem/1 Arial,sans-serif;position:absolute;top:19px;right:20px}.lightbox-nav{width:50px;height:50px;font:300 2.25rem/1 Arial,sans-serif}.lightbox-nav:hover,.lightbox-close:hover{color:#52627c;background:#f7f4f2}@media (width<=760px){.memory-gallery-section .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:172px;gap:9px}.memory-gallery-section .gallery-slot:nth-child(n){border-radius:14px;grid-area:span 1/span 1}.memory-gallery-section .gallery-slot:first-child{grid-column:1/-1;height:218px}.gallery-copy{bottom:12px;left:12px;right:12px}.gallery-copy strong{font-size:.98rem}.gallery-open{width:28px;height:28px;top:9px;right:9px}.gallery-more{margin-top:19px}.gallery-lightbox{grid-template-columns:1fr;align-items:center;padding:52px 12px 68px}.lightbox-card{border-radius:19px;grid-template-columns:1fr;max-height:82svh;overflow-y:auto}.lightbox-photo{height:min(53svh,470px)}.lightbox-photo img{max-height:none}.lightbox-caption{min-height:0;padding:24px 22px 26px}.lightbox-caption h4{margin-block:10px 12px;font-size:2rem}.lightbox-caption p{font-size:.93rem;line-height:1.58}.lightbox-caption small{margin-top:17px}.lightbox-nav{z-index:3;width:43px;height:43px;position:absolute;bottom:13px}.lightbox-nav.is-prev{left:calc(50% - 53px)}.lightbox-nav.is-next{right:calc(50% - 53px)}.lightbox-close{top:9px;right:11px}}@media (prefers-reduced-motion:reduce){.gallery-slot img,.gallery-lightbox,.lightbox-card{transition:none;animation:none}}@media (width<=560px){#dress-code .wedding-palette{padding:20px 14px 22px}#dress-code .palette-swatches{grid-template-columns:repeat(6,minmax(0,1fr));gap:15px 8px;margin-top:10px;padding-bottom:0;overflow:visible}#dress-code .palette-swatch{grid-column:span 2}#dress-code .palette-swatch:nth-child(4){grid-column:2/span 2}#dress-code .palette-swatch:nth-child(5){grid-column:4/span 2}#dress-code .palette-swatch>span{border-width:4px;width:min(62px,100%);margin-bottom:7px}#dress-code .palette-swatch strong{min-height:2.5em;font-size:.72rem}#dress-code .palette-swatch em{letter-spacing:.08em;width:min(76px,100%);min-width:0;margin-top:4px;padding:6px 4px;font-size:.49rem}}.page.intro-only{min-height:100svh;overflow:hidden}.page.intro-only .hero{min-height:100svh;padding-block:clamp(48px,8vw,76px)}.chapter-action{cursor:pointer}.photo-crop{border-radius:16px;width:100%;height:calc(100% - 50px);overflow:hidden}.photo-sheet .photo-crop img{object-fit:cover;object-position:48% 34%;transform-origin:50%;border-radius:0;width:100%;height:100%;display:block;transform:scale(1.18)}@media (width<=760px){.page.intro-only .hero{min-height:100svh;padding:36px 18px}.memory-gallery-section .gallery-grid{grid-template-rows:218px;grid-auto-rows:172px}.memory-gallery-section .gallery-slot:first-child{height:auto;min-height:0}.photo-crop{height:calc(100% - 44px)}.lightbox-photo img{object-fit:cover}}.milestone-section{background:radial-gradient(circle at 18% 16%,#a9b8d38c,#0000 28%),#f7f4f2;padding-block:clamp(44px,7vw,78px)}.milestone-card{color:#f7f4f2;text-align:center;background:radial-gradient(circle at 86% 18%,#a9b8d37a,#0000 28%),linear-gradient(145deg,#52627c,#7287a6);border:1px solid #ffffff40;border-radius:30px;max-width:820px;margin-inline:auto;padding:clamp(34px,7vw,72px);position:relative;overflow:hidden;box-shadow:0 26px 64px #52627c33}.milestone-card:before{content:"";pointer-events:none;border:1px solid #ffffff2b;border-radius:22px;position:absolute;inset:14px}.milestone-card>*{position:relative}.milestone-card .monogram{margin:0 auto 16px}.milestone-eyebrow{color:#ffffffb3;letter-spacing:.18em;text-transform:uppercase;font:700 .62rem/1 Arial,sans-serif}.milestone-card h3{color:#fff;margin:18px 0 20px;font-size:clamp(2.7rem,6vw,5rem);font-weight:400;line-height:.96}.milestone-card p{color:#fffc;max-width:590px;margin-inline:auto;font-size:1.05rem;line-height:1.75}.milestone-meta{background:#ffffff14;border:1px solid #ffffff3d;border-radius:999px;align-items:center;gap:14px;margin-top:28px;padding:12px 17px;display:inline-flex}.milestone-meta strong{color:#fff;letter-spacing:.12em;text-transform:uppercase;font:700 .67rem/1 Arial,sans-serif}.milestone-meta span{color:#ffffffa8;font-size:.86rem}@media (width<=760px){.milestone-section{padding-block:38px}.milestone-card{border-radius:23px;padding:38px 22px}.milestone-card:before{border-radius:17px;inset:10px}.milestone-card h3{font-size:2.7rem}.milestone-card p{font-size:.95rem;line-height:1.62}.milestone-meta{text-align:left;border-radius:17px;flex-direction:column;align-items:flex-start;gap:7px}}
