:root{--ink:#344854;--blue:#7d9eb8;--paper:#fbfaf6;--line:#d7deda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}nav{border-bottom:1px solid var(--line);z-index:3;background:#fbfaf6ef;justify-content:space-between;align-items:center;height:88px;padding:0 7%;display:flex;position:relative}nav>div{align-items:center;gap:35px;font-size:12px;display:flex}.brand{letter-spacing:4px;font-family:Cormorant Garamond,serif;font-size:29px}.brand span{color:#a99b7c;font-style:italic}.nav-rsvp{border-bottom:1px solid #7d9eb8;padding-bottom:6px}.hero{text-align:center;background:radial-gradient(#fffdf7 20%,#e8eff2 100%);justify-content:center;align-items:center;min-height:830px;display:flex;position:relative;overflow:hidden}.hero-content{z-index:1;padding:58px 15px 115px;position:relative}.eyebrow{letter-spacing:3px;font-size:10px;font-weight:500}.monogram{color:#7294af;letter-spacing:-10px;margin:26px 0 0;font-family:Cormorant Garamond,serif;font-size:125px;line-height:1.1}.monogram span{color:#b2a17f;margin:0 8px;font-size:60px;font-style:italic;position:relative;top:9px}.script{color:#7893a5;margin:8px 0 24px;font-family:Italianno,cursive;font-size:40px}h1,h2,h3{font-family:Cormorant Garamond,serif;font-weight:400}h1{margin:18px 0;font-size:43px;line-height:1.1}h1 span{color:#a49777;margin:7px;font-size:26px;font-style:italic;display:block}h2{margin:22px 0;font-size:52px;line-height:1.12}h2 em{color:#7896ad;font-weight:400}h3{margin:12px 0;font-size:27px}.rule{background:#baa989;width:55px;height:1px;margin:28px auto}.date{letter-spacing:3px;font-size:13px}.venue-line{letter-spacing:1.8px;margin:17px 0 29px;font-size:10px}.button,button{color:#fff;cursor:pointer;letter-spacing:.5px;background:#7f9eb5;border:0;padding:17px 28px;font:12px DM Sans,sans-serif;display:inline-block}.button span{margin-left:20px}.small{color:#6c7e86;font-size:10px;line-height:1.8}.hero .small{margin-top:15px}.flowers{opacity:.9;width:32%;height:95%;position:absolute;bottom:-30px;left:-3%}.flowers.flip{left:auto;right:-3%;transform:scaleX(-1)}.scroll{letter-spacing:2px;font-size:9px;line-height:2.5;position:absolute;bottom:27px}.intro{text-align:center;padding:95px 8% 75px}.intro>p:not(.eyebrow){color:#6e7b80;line-height:1.9}.details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);max-width:1000px;margin:65px auto 0;padding:35px 0;display:grid}.details>div+div{border-left:1px solid var(--line)}small{letter-spacing:2px;font-size:9px}.details p{color:#74828b;margin:0;font-size:12px}.venue-section{background:#eef2f2;grid-template-columns:1fr 1fr;max-width:1100px;margin:0 auto 100px;display:grid}.venue-art{background:#dce7ec;justify-content:center;padding:45px;display:flex}.arch{text-align:center;border:1px solid #a2b7c6;border-radius:200px 200px 0 0;flex-direction:column;justify-content:center;align-items:center;width:85%;min-height:350px;padding:20px;display:flex}.arch>p,.arch>span:last-child{letter-spacing:2px;font-size:8px}.tiny-star{color:#a69576;font-size:44px}.arch h3{font-size:32px;font-style:italic}.skyline{color:#91a8b9;letter-spacing:5px;margin:25px 0;font-size:34px}.venue-copy{padding:50px}.venue-copy h2{font-size:39px}.venue-copy .script{margin:0 0 12px}.venue-copy>p:not(.eyebrow,.script){color:#687981;font-size:12px;line-height:1.9}.text-link{border-bottom:1px solid #829dad;padding:15px 0 8px;font-size:12px;display:inline-block}.rsvp-section{background:#edf2f4;grid-template-columns:1fr 1fr;gap:100px;padding:90px max(8%,50vw - 500px);display:grid}.rsvp-section>div>p{line-height:2}.floral-mark{color:#a7bdcc;margin-top:30px;font-size:100px;display:block}label{margin-bottom:19px;font-size:11px;line-height:1.6;display:block}input,textarea{width:100%;color:var(--ink);background:#ffffff80;border:1px solid #ccd7dc;border-radius:0;margin-top:7px;padding:13px;font:12px DM Sans,sans-serif;display:block}input:focus,textarea:focus{outline-offset:2px;outline:2px solid #7699b4}input[type=radio]{accent-color:#6e8fa6;width:auto;margin:0 7px 0 0;display:inline}fieldset{border:0;margin:0 0 20px;padding:0}legend{margin-bottom:10px;font-size:11px}.choice{margin:0 15px 8px 0;font-size:11px;display:inline-block}.optional{color:#6f7e85}.rsvp-section button{width:100%}.form-status{font-size:12px;line-height:1.8}button:disabled{opacity:.6}footer{text-align:center;padding:55px 20px 75px}footer p{font:italic 20px Cormorant Garamond,serif}footer p+p{letter-spacing:2px;font:9px DM Sans,sans-serif}footer>a{color:#74838b;margin-top:20px;font-size:10px;display:inline-block}.music{color:#4d6a80;z-index:5;background:#fffdf8;border:1px solid #d6dfe2;border-radius:30px;padding:12px 18px;font-size:16px;position:fixed;bottom:22px;right:24px;box-shadow:0 2px 20px #536e8220}.music span{margin-left:7px;font-size:10px}.admin{max-width:1100px;margin:auto;padding:50px 25px}.admin h1{font-size:48px}.admin label{max-width:450px;margin-top:30px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;border-bottom:1px solid #ccd7dc;padding:14px}a:focus-visible,button:focus-visible{outline-offset:5px;outline:2px solid #517794}[hidden]{display:none!important}@media (max-width:700px){nav{height:72px;padding:0 6%}nav>div{gap:18px;font-size:10px}.brand{font-size:24px}.hero{min-height:780px}.flowers{opacity:.55;width:55%;left:-23%}.flowers.flip{right:-23%}h1{font-size:34px}.hero-content{padding-top:50px}.eyebrow{letter-spacing:2px;font-size:8px}.venue-line{letter-spacing:1px;font-size:8px}.monogram{font-size:108px}h2{font-size:42px}.intro{padding:65px 6%}.details{grid-template-columns:1fr;gap:28px;margin-top:35px}.details>div+div{border-left:0}.venue-section{grid-template-columns:1fr;margin:0 6% 65px}.venue-art{padding:35px}.venue-copy{padding:30px}.rsvp-section{grid-template-columns:1fr;gap:20px;padding:55px 8%}.floral-mark{display:none}.rsvp-section>div .small{margin-bottom:25px}.music{bottom:14px;right:14px}.intro>p:not(.eyebrow){font-size:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.photo-hero{text-align:left;background:radial-gradient(at 20% 25%,#fffefa,#eef3f5 100%);grid-template-columns:1fr 1fr;gap:5%;min-height:780px;padding:65px max(7%,50vw - 600px);display:grid;overflow:hidden}.hero-copy{z-index:2;align-self:center;padding:15px 0;position:relative}.hero-copy h1{letter-spacing:-1px;font-size:clamp(34px,3.7vw,55px);line-height:1.05}.hero-copy h1>span{margin:9px 0;font-size:28px}.hero-copy .script{margin:21px 0 26px;font-size:41px}.hero-monogram{color:#7899b3;letter-spacing:-4px;margin:25px 0;font:51px Cormorant Garamond,serif}.hero-monogram span{color:#ab9774;margin:0 7px;font-size:29px;font-style:italic}.hero-date{border-top:1px solid #cbd7db;border-bottom:1px solid #cbd7db;align-items:center;gap:17px;max-width:335px;margin:24px 0;padding:12px 0;display:flex}.hero-date>span{color:#7694ab;font:53px/1 Cormorant Garamond,serif}.hero-date>div{letter-spacing:2px;border-left:1px solid #cbd7db;padding-left:17px;font-size:12px;line-height:1.7}.hero-date small{letter-spacing:1.5px;font-size:8px;display:block}.hero-copy .venue-line{letter-spacing:1px;font-size:9px;line-height:1.9}.hero-visual{align-self:center;max-width:490px;position:relative}.portrait-frame{border:1px solid #b1c1cb;border-radius:260px 260px 3px 3px;padding:10px;position:relative}.portrait-frame:before{content:"";pointer-events:none;border:1px solid #d5c9b4;border-radius:270px 270px 3px 3px;position:absolute;inset:-9px}.portrait-frame img{object-fit:cover;object-position:50% 40%;filter:saturate(.85);border-radius:250px 250px 0 0;width:100%;height:620px;display:block}.portrait-caption{color:#fff;text-shadow:0 1px 9px #0009;text-align:center;font:34px Italianno,cursive;position:absolute;bottom:28px;left:0;right:0}.photo-seal{color:#fff;z-index:2;background:#b3c8d7;border:5px double #eaf0f3;border-radius:50%;justify-content:center;align-items:center;width:105px;height:105px;padding-bottom:12px;font:35px Cormorant Garamond,serif;display:flex;position:absolute;bottom:23px;left:-47px;transform:rotate(-10deg);box-shadow:0 4px 16px #334b6020}.photo-seal span{margin:0 3px;font-size:22px;font-style:italic}.photo-seal small{letter-spacing:1.5px;font:7px DM Sans,sans-serif;position:absolute;bottom:19px}.hero-visual>.flowers{opacity:.95;pointer-events:none;z-index:1;width:180px;height:330px;bottom:-38px;left:auto;right:-105px;transform:rotate(10deg)}.side-note{writing-mode:vertical-rl;letter-spacing:2.6px;color:#8a9ca7;font-size:8px;position:absolute;top:60px;right:-41px}.photo-note{border-top:1px solid #dbe2e5;border-bottom:1px solid #dbe2e5;justify-content:center;align-items:center;gap:55px;padding:42px 20px;display:flex}.photo-note>span{color:#b5a17f;font-size:23px}.photo-note p{text-align:center;margin:0;font:27px/1.4 Cormorant Garamond,serif}.photo-note em{color:#7895aa}.memories{max-width:1400px;margin:auto;padding:80px 7% 0}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.section-heading h2{margin-bottom:0}.section-heading>p{color:#708089;margin:0 0 7px;font-size:12px;line-height:1.9}.memories figure{margin:0}.blossom-photo{position:relative;overflow:hidden}.blossom-photo>img{object-fit:cover;object-position:center 58%;width:100%;height:510px;display:block}.blossom-photo:after{content:"";pointer-events:none;background:linear-gradient(#0000,#152e4466);position:absolute;inset:45% 0 0}.blossom-photo figcaption{text-align:right;color:#fff;z-index:1;position:absolute;bottom:25px;right:40px}.blossom-photo figcaption span{letter-spacing:2px;font-size:8px}.blossom-photo .script{color:#fff;margin:9px 0 0;font-size:49px}.memory-grid{grid-template-columns:1fr 1fr 1fr;gap:28px;margin-top:35px;display:grid}.memory-grid figure:nth-child(2){padding-top:45px}.memory-grid figure>img{object-fit:cover;width:100%;height:310px;display:block}.memory-grid figure:first-child>img{object-position:40% center}.memory-grid figure:last-child>img{object-position:center 62%}.memory-grid figcaption{border-bottom:1px solid #d5dde0;padding:18px 0 20px}.memory-grid small{color:#7b919f;letter-spacing:1.5px;font-size:8px}.memory-grid figcaption p{margin:10px 0 0;font:italic 23px Cormorant Garamond,serif}.travel-diptych{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px;padding:70px 8% 0;display:grid}.travel-diptych img{object-fit:cover;width:100%;height:260px;display:block}.travel-diptych figure:first-child img{object-position:45% 61%}.travel-diptych>div{text-align:center}.travel-diptych .script{font-size:36px;line-height:.95}.travel-diptych>div>span{color:#b5a17f;font-size:30px}.venue-drawing{color:#879faf;width:100%;max-width:260px;margin:15px 0}.rsvp-portrait{background:#fffdf7;border:1px solid #d6dfe3;width:180px;height:220px;margin:28px 0 0;padding:7px;transform:rotate(-4deg);box-shadow:0 4px 12px #40566912}.rsvp-portrait img{object-fit:cover;object-position:center 30%;width:100%;height:100%}.music-credit{color:#8a969b;margin-top:25px!important;font:8px/1.8 DM Sans,sans-serif!important}.music-credit a{text-underline-offset:2px;text-decoration:underline}.music-error{color:#684a42;z-index:6;background:#fffdf8;max-width:230px;font-size:10px;position:fixed;bottom:70px;right:20px}.music{font-size:14px}@media (min-width:1500px){.photo-hero{padding-top:90px;padding-bottom:90px}.portrait-frame img{height:650px}}@media (max-width:900px) and (min-width:701px){.photo-hero{gap:6%;min-height:720px;padding-left:6%;padding-right:7%}.portrait-frame img{height:530px}.hero-copy h1{font-size:36px}.hero-copy .script{font-size:32px}.hero-copy .venue-line{font-size:8px}.hero-visual>.flowers{right:-80px}.memory-grid{gap:15px}.memory-grid figure>img{height:240px}.travel-diptych{padding-left:0;padding-right:0}.travel-diptych img{height:230px}}@media (max-width:700px){nav{padding:0 5%}nav>div{gap:14px}nav>div>a:first-child{display:none}.photo-hero{flex-direction:column-reverse;gap:26px;min-height:0;padding:35px 9% 40px;display:flex;overflow:hidden}.hero-visual{align-self:center;width:78%;max-width:340px;margin-bottom:4px}.portrait-frame img{object-position:center 34%;height:355px}.portrait-caption{font-size:27px;bottom:22px}.photo-seal{border-width:4px;width:77px;height:77px;font-size:27px;bottom:12px;left:-32px}.photo-seal span{font-size:17px}.photo-seal small{font-size:5px;bottom:12px}.side-note{letter-spacing:2px;font-size:6px;top:50px;right:-29px}.hero-visual>.flowers{opacity:.85;width:140px;height:240px;bottom:-25px;left:auto;right:-86px}.hero-copy{text-align:center;width:100%;padding:0}.hero-monogram{display:none}.hero-copy h1{letter-spacing:-.5px;margin:14px 0;font-size:36px}.hero-copy h1>span{margin:5px 0;font-size:23px}.hero-copy .script{margin:15px 0;font-size:32px}.hero-date{justify-content:center;max-width:290px;margin:20px auto}.hero-date>span{font-size:46px}.hero-date>div{text-align:left;font-size:11px}.hero-copy .venue-line{margin:17px 0 22px;font-size:8px}.hero-copy .small{font-size:9px}.photo-note{gap:22px;padding:29px 15px}.photo-note p{font-size:22px}.photo-note>span{font-size:17px}.memories{padding:50px 6% 0}.section-heading{margin-bottom:24px;display:block}.section-heading h2{margin-top:14px;font-size:37px}.section-heading>p{margin-top:18px;font-size:11px}.blossom-photo>img{object-position:35% center;height:300px}.blossom-photo figcaption{bottom:18px;right:18px}.blossom-photo figcaption span{letter-spacing:1.2px;font-size:6px}.blossom-photo .script{font-size:34px}.memory-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}.memory-grid figure:nth-child(2){padding-top:30px}.memory-grid figure>img{height:200px}.memory-grid figure:last-child{grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:center;gap:18px;padding-top:10px;display:grid}.memory-grid figure:last-child>img{height:240px}.memory-grid figcaption{padding:13px 0 15px}.memory-grid small{letter-spacing:1px;font-size:6px}.memory-grid figcaption p{font-size:21px;line-height:1.1}.travel-diptych{grid-template-columns:1fr 1fr;gap:13px;padding:40px 0 0}.travel-diptych>div{grid-area:1/1/auto/-1}.travel-diptych .script{margin:12px 0;font-size:31px}.travel-diptych>div>span{display:none}.travel-diptych img{height:210px}.travel-diptych figure:first-child img{object-position:40% 62%}.rsvp-portrait{display:none}.intro{padding-top:60px}.rsvp-section{gap:24px}.music{padding:11px 14px}.music span{font-size:9px}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.invitation-content:focus{outline:none}.envelope-screen{z-index:100;text-align:center;background:radial-gradient(at 50% 35%,#fffdf7,#e7eff4);flex-direction:column;justify-content:center;align-items:center;padding:35px 20px;transition:opacity .35s .8s,visibility .35s .8s;display:flex;position:fixed;inset:0;overflow:auto}.envelope-screen:before,.envelope-screen:after{content:"✧";color:#bdac8e;opacity:.6;font:32px Georgia;position:absolute;top:21%;left:14%}.envelope-screen:after{inset:auto 14% 22% auto}.envelope-screen h2{margin:15px 0 48px;font-size:47px}.envelope-screen h2 em{font-size:53px;display:block}.envelope-button{perspective:1000px;width:min(440px,80vw);height:280px;color:var(--ink);isolation:isolate;box-shadow:none;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:block;position:relative}.envelope-button:focus-visible{outline-offset:15px;border-radius:3px;outline:2px solid #698ca8}.envelope-back{z-index:0;background:#9fb8cb;border-radius:4px;position:absolute;inset:0;box-shadow:0 22px 50px #34485420}.invitation-letter{z-index:1;background:#fffdf7;border:1px solid #dbd3c2;flex-direction:column;align-items:center;gap:12px;padding:35px 12px;font:italic 20px Cormorant Garamond,serif;transition:transform .65s .28s;display:flex;position:absolute;inset:15px 20px 0}.letter-monogram{color:#7d9eb8;font:45px Cormorant Garamond,serif}.envelope-pocket{z-index:3;clip-path:polygon(0 0,50% 53%,100% 0,100% 100%,0 100%);filter:drop-shadow(0 -1px #e6eef5);background:linear-gradient(120deg,#c5d7e4,#b3cbdc);position:absolute;inset:0}.envelope-pocket:after{content:"";clip-path:polygon(0 100%,50% 48%,100% 100%);background:linear-gradient(#d0e0eb,#bed3e2);position:absolute;inset:0}.envelope-flap{clip-path:polygon(0 0,100% 0,50% 54%);transform-origin:top;z-index:4;background:linear-gradient(175deg,#d9e5ed,#b8cddd);transition:transform .65s,z-index 0s .3s;position:absolute;inset:0}.wax-seal{z-index:5;color:#76674f;background:radial-gradient(circle at 40% 30%,#e7dcc8,#c4af8c);border:5px double #f1e9d9;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font:29px Cormorant Garamond,serif;transition:transform .35s,opacity .25s;display:flex;position:absolute;top:calc(50% - 25px);left:calc(50% - 36px);box-shadow:0 3px 9px #5b553c30}.wax-seal>span{margin:0 2px;font-size:19px;font-style:italic}.open-hint{z-index:6;letter-spacing:2.5px;color:#526d81;font:8px DM Sans,sans-serif;position:absolute;bottom:29px;left:0;right:0}.open-hint span{margin-left:8px}.envelope-names{margin:35px 0 0;font:25px Cormorant Garamond,serif}.envelope-names span{color:#ac9977;margin:0 5px;font-style:italic}.envelope-subtitle{color:#859cab;margin:8px 0;font:30px Italianno,cursive}.is-opening .wax-seal{opacity:0;transform:scale(1.15)}.is-opening .envelope-flap{z-index:0;transform:rotateX(180deg)}.is-opening .invitation-letter{transform:translateY(-100px)}.envelope-screen.is-opening{opacity:0;visibility:hidden}.replay-wrap{text-align:center;background:var(--paper);padding:0 20px 35px}.replay-button,.reveal-button{color:#6b889e;letter-spacing:.5px;background:0 0;border-bottom:1px solid #b7c8d4;padding:8px 0;font-size:10px}.scratch-section{text-align:center;background:#f5f7f7;border-top:1px solid #dbe2e5;padding:65px 20px 50px}.scratch-section h2{margin:15px 0;font-size:45px}.scratch-help{color:#73858f;margin-bottom:25px;font-size:11px}.scratch-card{isolation:isolate;background:#fffdf6;border:1px solid #d5c9b2;max-width:480px;height:190px;margin:0 auto 15px;padding:8px;position:relative;box-shadow:0 8px 25px #4b647010}.scratch-card:before{content:"";pointer-events:none;z-index:-1;border:1px solid #e5dbca;position:absolute;inset:7px}.scratch-date{flex-direction:column;justify-content:center;gap:13px;height:100%;display:flex}.scratch-date>span{letter-spacing:4px;color:#8094a2;font-size:8px}.scratch-date strong{color:#65869f;font:40px Cormorant Garamond,serif}.scratch-date p{color:#ae9873;margin:0;font:28px Italianno,cursive}.scratch-card canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.revealed{animation:.65s date-in}.reveal-button:disabled{opacity:1;cursor:default;border-color:#0000}.envelope-button:hover .wax-seal{box-shadow:0 4px 15px #5b553c50}@keyframes date-in{0%{opacity:.65;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (max-width:700px){.envelope-screen h2{margin-bottom:35px;font-size:36px}.envelope-screen h2 em{font-size:43px}.envelope-button{width:min(350px,84vw);height:220px}.envelope-names{max-width:260px;font-size:22px;line-height:1.5}.envelope-names span{font-size:18px;line-height:1;display:block}.envelope-screen:before,.envelope-screen:after{display:none}.invitation-letter{padding-top:22px}.letter-monogram{font-size:35px}.scratch-section{padding:45px 6% 35px}.scratch-section h2{font-size:38px}.scratch-card{height:170px}.scratch-date strong{font-size:35px}.is-opening .invitation-letter{transform:translateY(-65px)}}@media (prefers-reduced-motion:reduce){.envelope-screen,.invitation-letter,.envelope-flap,.wax-seal{transition:none}.revealed{animation:none}}.pocket-screen{background:radial-gradient(at 40% 25%,#fffef9 0%,#f0f4f5 55%,#e3edf3 100%);padding:22px 20px;transition:opacity .4s 1.05s,visibility .4s 1.05s}.pocket-screen:before{font-size:22px;top:42%;left:calc(50% - 300px)}.pocket-screen:after{font-size:22px;bottom:32%;right:calc(50% - 290px)}.pocket-screen>h2{margin:12px 0 28px;font-size:35px}.pocket-screen>h2 em{font-size:39px;display:inline}.pocket-screen>.eyebrow{letter-spacing:3px;margin:0;font-size:8px}.pocket-button{perspective:none;isolation:isolate;filter:drop-shadow(12px 18px 17px #4a627526);background:0 0;flex-shrink:0;width:310px;height:404px;margin:0 20px 24px;transition:transform 1s;transform:rotate(-5deg)}.pocket-button:focus-visible{outline-offset:15px;border-radius:0;outline:1px solid #a99a79}.pocket-artwork{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.pocket-backing{z-index:0;background:#afc8d9;border:1px solid #aec5d4;position:absolute;inset:12px 13px 15px;transform:rotate(5deg)}.pocket-letter{z-index:1;color:#6e7b7e;background:#fffdf5;border:1px solid #d7cdb8;padding:9px;transition:transform .95s cubic-bezier(.22,.61,.36,1) .15s;display:block;position:absolute;inset:11px 24px 24px;transform:translate(4px,-13px)rotate(5deg)}.letter-border{border:1px solid #d9c9a8;flex-direction:column;justify-content:center;align-items:center;gap:22px;width:100%;height:100%;display:flex}.letter-tiny{letter-spacing:1.5px;font:5px DM Sans,sans-serif}.pocket-letter .letter-monogram{color:#b69861;font-size:48px;line-height:1}.letter-couple{font:22px/1 Cormorant Garamond,serif}.letter-couple i{color:#b39b72;font-size:16px;line-height:1.5}.pocket-open-hint{text-align:center;letter-spacing:2px;color:#6b8699;font:8px DM Sans,sans-serif;transition:opacity .2s;position:absolute;bottom:-36px;left:0;right:0;transform:rotate(5deg)}.pocket-open-hint>span{margin-left:7px}.pocket-screen .envelope-names{margin:34px 0 0;font-size:22px}.pocket-screen .envelope-subtitle{margin:4px 0 0;font-size:28px}.pocket-artwork .tassel{transform-origin:285px 80px;transition:transform .9s}.pocket-button:hover .tassel{transform:rotate(-4deg)}.pocket-screen.is-opening .pocket-letter{transform:translate(5px,-200px)rotate(7deg)}.pocket-screen.is-opening .pocket-button{transform:translateY(45px)rotate(-8deg)}.pocket-screen.is-opening .tassel{transform:rotate(12deg)}.pocket-screen.is-opening .pocket-open-hint{opacity:0}.pocket-screen.is-opening{opacity:0;visibility:hidden}@media (max-height:760px) and (min-width:701px){.pocket-button{width:265px;height:346px}.pocket-screen>h2{margin-bottom:23px}.pocket-screen .envelope-names{margin-top:30px}.letter-border{gap:15px}.letter-couple{font-size:19px}}@media (max-width:700px){.pocket-screen{padding:25px 20px}.pocket-screen>h2{margin:13px 0 27px;font-size:29px}.pocket-screen>h2 em{font-size:34px;display:block}.pocket-button{width:265px;height:346px;margin-bottom:23px}.pocket-letter .letter-monogram{font-size:40px}.letter-border{gap:16px}.letter-couple{font-size:20px}.pocket-screen .envelope-names{max-width:300px;margin-top:34px;font-size:21px}.pocket-screen .envelope-names>span{font-size:18px;display:inline}.pocket-screen .envelope-subtitle{font-size:27px}.pocket-screen.is-opening .pocket-letter{transform:translate(4px,-160px)rotate(7deg)}}@media (max-height:680px){.pocket-screen{justify-content:flex-start;padding-top:25px}.pocket-screen>h2{margin-bottom:20px}.pocket-button{width:225px;height:294px}.pocket-screen .envelope-names{margin-top:26px;font-size:18px}.pocket-screen .envelope-subtitle{font-size:24px}.letter-border{gap:10px}.letter-couple{font-size:17px}.letter-tiny{font-size:4px}.pocket-open-hint{font-size:7px;bottom:-28px}}@media (prefers-reduced-motion:reduce){.pocket-screen,.pocket-button,.pocket-letter,.pocket-artwork .tassel,.pocket-open-hint{transition:none}}.record-player{z-index:10;color:#465c6a;text-align:left;letter-spacing:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf7f5;border:1px solid #d0dce3;border-radius:8px;align-items:center;gap:15px;width:270px;height:107px;padding:12px 18px 12px 12px;transition:box-shadow .25s,border-color .25s;display:flex;position:fixed;bottom:20px;right:22px;box-shadow:0 5px 25px #3b56631c}.record-player:hover{border-color:#91acbf;box-shadow:0 7px 28px #3b566329}.record-player:focus-visible{outline-offset:5px;outline:2px solid #7698b2}.record-player:disabled{opacity:1;cursor:wait}.record-art{isolation:isolate;flex:0 0 105px;width:105px;height:80px;display:block;position:relative}.vinyl{background:conic-gradient(from 30deg,#18232a,#3a444b 16%,#151d22 25%,#202c34 45%,#4c555c 57%,#182026 70%,#151e24);border:1px solid #121e24;border-radius:50%;width:76px;height:76px;animation:6s linear infinite paused record-spin;position:absolute;top:2px;right:0;box-shadow:0 2px 5px #1e2d3544}.is-playing .vinyl{animation-play-state:running}.vinyl-grooves{background:repeating-radial-gradient(circle,#0000 0 2px,#9eabb128 2.5px,#0000 3px);border-radius:50%;position:absolute;inset:5px}.vinyl-label{background:#b6cddd;border:1px solid #d7e6ed;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:24px}.vinyl-label>span{color:#485f70;white-space:nowrap;font:italic 9px Cormorant Garamond,Georgia,serif;position:relative;top:-3px}.vinyl-label>i{background:#283c4b;border:1px solid #ecf1f4;border-radius:50%;width:4px;height:4px;position:absolute;top:calc(50% - 1px);left:calc(50% - 2px)}.record-sleeve{z-index:2;background:#f6f3e9;border:1px solid #d4d4c8;width:63px;height:80px;padding:3px;display:block;position:absolute;top:0;left:0;overflow:hidden;transform:rotate(-6deg);box-shadow:2px 2px 5px #253b4d30}.record-sleeve img{object-fit:cover;object-position:center 30%;filter:saturate(.7);width:100%;height:100%;display:block}.sleeve-caption{color:#fff;text-shadow:0 1px 5px #000;text-align:center;font:11px Italianno,cursive;position:absolute;bottom:6px;left:0;right:0}.tonearm{transform-origin:50% 5px;z-index:3;background:linear-gradient(90deg,#9f8b63,#e3d2af,#ac9874);border-radius:4px;width:5px;height:47px;transition:transform .65s;position:absolute;top:-1px;right:-1px;transform:rotate(-24deg);box-shadow:1px 1px 2px #102e3d33}.tonearm:before{content:"";background:#c8b48d;border:2px solid #e4dac7;border-radius:50%;width:9px;height:9px;position:absolute;top:0;left:-2px}.tonearm>i{background:#586d7b;border-radius:2px;width:8px;height:13px;position:absolute;bottom:-5px;left:-1px;transform:rotate(-20deg)}.is-playing .tonearm{transform:rotate(18deg)}.record-info{flex-direction:column;gap:7px;min-width:0;display:flex}.record-kicker{letter-spacing:1.1px;white-space:nowrap;color:#7c919f;font-size:6px}.record-info>strong{color:#4a6579;font:500 23px/1 Cormorant Garamond,Georgia,serif}.record-action{color:#708796;white-space:nowrap;align-items:center;gap:5px;font-size:8px;display:flex}.record-control{width:9px;font-size:9px}.equalizer{opacity:0;align-items:center;gap:2px;height:10px;margin-left:3px;display:flex}.is-playing .equalizer{opacity:1}.equalizer>i{background:#88a6bb;border-radius:1px;width:2px;height:8px;animation:.9s ease-in-out infinite paused music-bars;display:block}.is-playing .equalizer>i{animation-play-state:running}.equalizer>i:nth-child(2){height:11px;animation-delay:-.3s}.equalizer>i:nth-child(3){height:6px;animation-delay:-.6s}.music-error{border-radius:4px;padding:5px 8px;bottom:135px;right:22px}.music-error:empty{display:none}@keyframes record-spin{to{transform:rotate(360deg)}}@keyframes music-bars{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@media (max-width:700px){.record-player{border-radius:6px;gap:12px;width:217px;height:86px;padding:9px 12px 9px 9px;bottom:12px;right:12px}.record-art{flex-basis:82px;width:82px;height:64px}.vinyl{width:60px;height:60px}.vinyl-label{inset:18px}.vinyl-label>span{font-size:8px}.vinyl-grooves{inset:4px}.record-sleeve{width:49px;height:64px;padding:2px}.sleeve-caption{font-size:9px;bottom:5px}.tonearm{width:4px;height:37px}.tonearm>i{width:6px;height:11px}.record-kicker{letter-spacing:.8px;font-size:5px}.record-info>strong{font-size:21px}.record-info{gap:6px}.record-action{gap:4px;font-size:7px}.music-error{bottom:108px;right:12px}.replay-wrap{padding-bottom:110px}footer{padding-bottom:35px}}@media (prefers-reduced-motion:reduce){.vinyl,.equalizer>i{animation:none}.tonearm,.record-player{transition:none}}.language-switch{z-index:200;color:#8295a1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f2;border:1px solid #d8e0e4;border-radius:22px;align-items:center;gap:7px;padding:5px 10px;display:flex;position:fixed;top:18px;right:18px;box-shadow:0 2px 10px #3448540c}.language-switch button{color:#899aa5;letter-spacing:0;white-space:nowrap;background:0 0;border:0;padding:6px 4px;font-size:10px}.language-switch button[aria-pressed=true]{color:#365e79;font-weight:600}.language-switch>span{color:#bac6cd;font-size:10px}nav{padding-right:175px}html[lang=ja] body{font-family:DM Sans,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3,html[lang=ja] .envelope-names,html[lang=ja] .letter-couple{font-family:Noto Serif JP,Hiragino Mincho ProN,serif}html[lang=ja] .hero-copy h1{letter-spacing:.02em;font-size:36px;line-height:1.65}html[lang=ja] h2{font-size:37px;line-height:1.7}html[lang=ja] .script{letter-spacing:.08em;font-family:Noto Serif JP,serif;font-size:25px;line-height:1.8}html[lang=ja] .hero-copy .script{font-size:22px}html[lang=ja] .portrait-caption{letter-spacing:.08em;font:18px Noto Serif JP,serif}html[lang=ja] .pocket-screen>h2{font-size:27px}html[lang=ja] .pocket-screen>h2 em{font-size:30px;font-style:normal}html[lang=ja] .pocket-screen .envelope-names{font-size:17px}html[lang=ja] .pocket-screen .envelope-subtitle{margin-top:13px;font:17px Noto Serif JP,serif}html[lang=ja] .letter-couple{font-size:14px;line-height:1.5}html[lang=ja] .letter-tiny{letter-spacing:.5px;font-size:5px}html[lang=ja] .memory-grid figcaption p{font:17px/1.8 Noto Serif JP,serif}html[lang=ja] .photo-note p{font:22px/1.9 Noto Serif JP,serif}html[lang=ja] .venue-copy h2{font-size:31px}html[lang=ja] .arch h3{font-size:24px;line-height:1.8}html[lang=ja] .scratch-date p{font:18px Noto Serif JP,serif}html[lang=ja] .record-info>strong{font:16px Noto Serif JP,serif}html[lang=ja] .record-kicker{letter-spacing:0;font-size:6px}html[lang=ja] .sleeve-caption{font:5px Noto Serif JP,serif}html[lang=ja] .details h3{font-size:24px}html[lang=ja] .eyebrow{letter-spacing:2px}html[lang=ja] .hero-date>div{letter-spacing:1px}html[lang=ja] .rsvp-section>div>p{line-height:2.2}html[lang=ja] footer>p:first-of-type{font:17px Noto Serif JP,serif}@media (max-width:900px){nav{padding-right:155px}nav>div{gap:15px}nav>div>a:first-child{display:none}}@media (max-width:700px){.language-switch{gap:4px;padding:3px 7px;top:12px;right:10px}.language-switch button{padding:5px 3px;font-size:9px}nav{padding-right:125px}nav>div{gap:10px;font-size:9px}nav>div>a:nth-child(2){display:none}html[lang=ja] .hero-copy h1{font-size:25px}html[lang=ja] h2,html[lang=ja] .section-heading h2{font-size:28px}html[lang=ja] .script{font-size:19px}html[lang=ja] .hero-copy .script{font-size:17px}html[lang=ja] .portrait-caption{font-size:13px}html[lang=ja] .pocket-screen>h2{font-size:23px}html[lang=ja] .pocket-screen>h2 em{font-size:26px}html[lang=ja] .pocket-screen .envelope-names{font-size:15px;line-height:1.8}html[lang=ja] .pocket-screen .envelope-subtitle,html[lang=ja] .memory-grid figcaption p{font-size:14px}html[lang=ja] .photo-note p{font-size:17px}html[lang=ja] .blossom-photo .script{font-size:21px}html[lang=ja] .travel-diptych .script{font-size:20px}html[lang=ja] .venue-copy h2{font-size:26px}html[lang=ja] .record-info>strong{font-size:14px}html[lang=ja] .record-kicker{font-size:5px}html[lang=ja] .record-action{font-size:6px}html[lang=ja] .letter-couple{font-size:12px}}
