:root{--ai:#393d35;--ai-deep:#282e29;--snow:#fbf8f0;--washi:#eee9dd;--sumi:#393d35;--shu:#976156;--gold:#958166;--muted:#7a7b70;--line:#393d3526}body{background:#f4f0e7;color:var(--ai)}nav{height:90px;padding:18px 4.5vw;background:var(--snow);border-bottom:1px solid var(--line)}nav .mon{color:var(--shu);border:0;font-size:28px}nav ul{gap:28px}nav ul a{color:var(--ai);font-size:10px;letter-spacing:.15em}.lang{border-color:#393d3540}.lang button{color:var(--ai);font-size:10px}.lang button.active{background:var(--ai);color:var(--snow)}nav.scrolled{background:#fbf8f0f5}.hero{margin:90px 0 0;min-height:760px;height:calc(100svh - 90px);max-height:1100px;background:#f4f0e7;color:var(--ai);display:block;text-align:left;padding:0;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 47%;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;filter:saturate(.57) brightness(.88);animation:landscape-breathe 24s ease-in-out infinite alternate}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#6c696014,transparent 30%)}.photo-note{position:absolute;bottom:35px;right:35px;text-align:right;font-size:9px;letter-spacing:.2em;line-height:1.9;color:#fff}.hero-text{width:47%;height:100%;padding:70px 5vw 45px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero .eyebrow{font-family:var(--sans);font-size:9px;letter-spacing:.25em;margin:0 0 30px}.hero-script{font:italic 24px var(--serif);color:var(--shu);margin-bottom:20px}.hero h1{font:400 clamp(56px,6.2vw,100px)/.92 var(--serif);letter-spacing:-.045em}.hero h1 span[data-name]{display:block}.hero h1 .amp{display:block;font-size:.65em;font-style:italic;color:var(--shu);margin:12px 0;padding:0}.hero-invite{font-size:12px;line-height:1.9;max-width:270px;margin:30px 0 24px}.hero-rsvp{display:flex;justify-content:space-between;width:175px;padding:11px 0;border-bottom:1px solid var(--ai);text-decoration:none;font-size:10px;letter-spacing:.2em}.hero-rsvp span:last-child{font-size:18px}.hero-bottom{display:flex;align-items:center;gap:30px;margin-top:40px;width:100%;padding-top:20px;border-top:1px solid var(--line)}.hero .date{font:10px/1.9 var(--sans);letter-spacing:.08em;margin:0;max-width:210px}.hanko{background:var(--shu);box-shadow:none;border-radius:1px}.hero .hanko{width:35px;height:35px;font-size:23px;margin:0}.vertical-note{position:absolute;right:28px;top:35px;writing-mode:vertical-rl;color:#fff;font:14px var(--mincho);letter-spacing:.4em}.scroll-hint{left:calc(47% + 24px);bottom:32px;transform:none;color:#fff;font-size:8px;letter-spacing:.18em;animation:none}#snow{left:47%;width:53%;height:100%;opacity:.55;z-index:2}.date-ribbon{display:flex;justify-content:space-between;align-items:center;padding:26px 5vw;border-bottom:1px solid var(--line);background:var(--snow);gap:20px}.date-ribbon>span{font-size:9px;letter-spacing:.16em}.date-ribbon>span:last-child{font-family:var(--mincho);letter-spacing:.3em}.countdown{margin:0;gap:22px}.countdown div{border:0;border-radius:0;background:none;padding:0;min-width:40px;-webkit-backdrop-filter:none;backdrop-filter:none;text-align:center}.countdown b{font-size:27px}.countdown span{font-size:7px;letter-spacing:.1em}section{padding:110px 6vw;position:relative}.wrap{max-width:1100px}.heading{text-align:left;margin-bottom:35px}.heading .jp{font-size:11px;letter-spacing:.25em;color:var(--shu);margin-bottom:15px}.heading h2{font:400 clamp(38px,4.5vw,62px)/1.1 var(--serif);letter-spacing:-.035em}.heading:after{display:none}.corner,.box-branch,.seigaiha{display:none}.postcard-label{font-size:9px;letter-spacing:.18em;margin-bottom:50px;color:var(--shu)}#greeting{margin:90px auto;max-width:1160px;background:var(--snow);padding:70px 80px;border:1px solid #d8d0bf;box-shadow:10px 12px #e6e0d3;text-align:left}#greeting:after{content:"POST CARD / 郵便はがき";position:absolute;right:45px;top:40px;font-size:8px;letter-spacing:.22em;color:var(--gold)}#greeting .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:0 60px}#greeting .heading{grid-column:1}#greeting .wrap>.reveal:not(.heading):not(.couple){grid-column:1}#greeting p{font:15px/2 var(--sans);color:var(--muted);margin:0 0 20px}#greeting .couple{grid-column:2;grid-row:1/3;display:flex;align-items:center;justify-content:center;gap:20px;margin:0;border-left:1px solid var(--line);padding-left:40px}.person{text-align:center}.person-monogram{width:80px;height:105px;display:grid;place-items:center;font:italic 50px var(--serif);border:1px solid #bbae9470;border-radius:50% 50% 0 0;margin:0 auto 18px;color:var(--shu);background:#eee8dd}.person h3{font-size:24px}.person .sub{display:none}#greeting .person .role{font-size:8px;letter-spacing:.15em;margin-bottom:8px}.knot{font-size:23px;color:var(--shu)}#story{background:#e7e8df;display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:100px 8vw}.story-photo{position:relative;padding:15px 15px 48px;background:#fffdf7;transform:rotate(-3deg);box-shadow:0 18px 45px #33382a26;align-self:center}.story-photo img{width:100%;height:570px;object-fit:cover;filter:saturate(.6)}.story-photo figcaption{position:absolute;bottom:14px;left:22px;font:italic 18px var(--serif)}.postmark{position:absolute;right:-20px;top:25px;width:105px;height:105px;border:2px solid #7c514f8c;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(15deg);color:#7c514f;font-size:10px;line-height:2;letter-spacing:.1em;box-shadow:0 0 0 5px #fbf8f0,0 0 0 6px #7c514f77;background:#fbf8f0d9}#story .wrap{margin:0;width:100%;align-self:center}.timeline:before{left:0;background:#a6ac98}.tl-item,.tl-item:nth-child(odd),.tl-item:nth-child(2n){width:100%;margin:0;text-align:left;padding:0 0 28px 26px}.tl-item:nth-child(odd):before,.tl-item:nth-child(2n):before{left:-4px;right:auto;width:8px;height:8px;border:1px solid #7b826c;background:#e7e8df;transform:none;border-radius:50%}.tl-item .when{font:11px var(--sans);letter-spacing:.1em;color:var(--shu)}.tl-item h4{font:26px var(--serif);margin:6px 0}.tl-item p{font-size:12px;line-height:1.9}#hana{background:var(--snow);display:grid;grid-template-columns:42% 58%;padding:0;min-height:720px}.flower-photo{background:url(/images/blossoms.jpg) 44% center/cover;filter:saturate(.6)}#hana .wrap{padding:85px 6vw;margin:0}#hana .heading{text-align:left}.hana-intro{margin:0 0 35px;text-align:left;font:16px/1.8 var(--serif)}.hana-row{grid-template-columns:1fr 1fr;gap:0}.hana-item{padding:25px 8px;text-align:left;border:0;border-top:1px solid var(--line);background:none}.hana-item svg{width:45px;height:45px;margin:0 0 12px}.hana-item b{display:none}.hana-item h4{font-size:19px}.hana-item p{font-size:10px}.hana-item:hover{transform:none;box-shadow:none}#details{background:#303a33;display:grid;grid-template-columns:34% 1fr;gap:65px;padding:80px 6vw;color:#f5efdf}.evening-photo{min-height:650px;background:linear-gradient(#222b3033,#222b3066),url(/images/garden.jpg) center/cover;display:flex;flex-direction:column;justify-content:space-between;padding:35px;color:#fff}.evening-photo>span{writing-mode:vertical-rl;font:32px var(--mincho);letter-spacing:.3em}.evening-photo p{font:italic 38px/1.1 var(--serif)}#details .wrap{width:100%}#details .heading .jp{color:#ceb79b}#details .heading h2{color:#fff5e4}.cards{grid-template-columns:1fr 1fr;gap:0}.card{border:0;border-bottom:1px solid #ffffff26;background:none;padding:24px 18px 24px 0;text-align:left}.card:before,.card:after{display:none}.card .icon{display:none}.card h3{font-size:27px;margin:0 0 8px}.card .time{font-size:17px;color:#d4b99c}.card p{font-size:11px;line-height:1.9}.card .btn{font-size:9px;padding:7px 0;border-width:0 0 1px}.cards .card:last-child:nth-child(odd){grid-column:1/-1}.map{height:180px;margin-top:25px;opacity:.8;filter:grayscale(1)}#gallery{background:#eee9dd;padding:100px 7vw 120px}#gallery .heading{text-align:center;margin-bottom:55px}.grid{grid-template-columns:1fr 1fr 1fr;grid-auto-rows:230px;gap:24px}.grid figure{border:10px solid #fffdf6;border-bottom:40px solid #fffdf6;box-shadow:0 6px 20px #554b3520;overflow:hidden;transform:rotate(-2deg)}.grid figure:nth-child(2n){transform:rotate(2deg)}.grid figure:nth-child(3){transform:rotate(1deg)}.grid figure.tall{grid-row:span 2}.grid figure.wide{grid-column:span 2}.grid img{filter:saturate(.65)}.grid figcaption{position:fixed;bottom:-33px;left:0;right:0;padding:0;background:none;opacity:1;color:var(--ai);font:italic 16px var(--serif)}.grid figure{overflow:visible}.grid figure:hover img{transform:none;filter:saturate(.9)}#rsvp{background:#f9f6ee;display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:100px 9vw}.rsvp-note{padding-top:40px}.rsvp-note .jp{font:11px var(--mincho);letter-spacing:.15em;color:var(--shu)}.rsvp-note h2{font:400 clamp(52px,6vw,85px)/1 var(--serif);letter-spacing:-.04em;margin:30px 0}.rsvp-note h2 em{font-weight:400;color:var(--shu)}.rsvp-note p{font-size:12px;line-height:2;color:var(--muted)}.rsvp-flower{display:block;font:100px var(--serif);color:#b69077;margin-top:40px}#rsvp .wrap{width:100%;margin:0}#rsvp .heading{display:none}.rsvp-box{background:none;padding:35px 0 0;border-top:1px solid var(--gold);box-shadow:none}.rsvp-box .deadline{text-align:left;margin:0 0 30px;font:italic 20px var(--serif)}.field label,.field legend{font-size:9px;letter-spacing:.1em}.field input[type=text],.field input[type=email],.field select,.field textarea{background:#fffdf8;border-radius:0;font-size:13px;padding:11px}.choice label{font-size:12px;padding:12px 6px}.submit{background:var(--ai);font-size:10px;letter-spacing:.2em}.field{margin-bottom:17px}footer{background:#29342e;padding:65px 20px 90px}footer>svg{display:none}footer .names{font-size:40px}footer p{font-size:10px}.photo-credit{font-size:8px;margin-top:25px}.music-control{position:fixed;bottom:22px;right:22px;z-index:60;display:flex;align-items:center;gap:12px;padding:13px 19px;background:#fbf8f0f5;border:1px solid #c5b99f;box-shadow:0 5px 24px #203a3e15;border-radius:2px;color:var(--ai);font:10px var(--sans);cursor:pointer;letter-spacing:.04em}.music-icon{display:flex;align-items:center;gap:3px;height:19px}.music-icon i{display:block;width:2px;height:6px;background:var(--shu)}.music-control[aria-pressed=true] i{animation:equalizer 1s ease-in-out infinite alternate}.music-icon i:nth-child(2){height:16px;animation-delay:-.5s}.music-icon i:nth-child(3){height:11px;animation-delay:-.2s}a:focus-visible,button:focus-visible,.grid figure:focus-visible{outline:2px solid var(--shu);outline-offset:5px}@keyframes landscape-breathe{to{transform:scale(1.055)}}@keyframes equalizer{to{height:4px}}@media(min-width:1700px){body{max-width:1800px;margin:auto}nav{max-width:1800px;margin:auto}}@media(max-width:900px){nav ul{gap:16px}.hero{min-height:720px}.hero-text{padding:45px 4vw}.hero h1{font-size:66px}.hero-script{font-size:20px}#greeting{margin:60px 30px;padding:55px 40px}#greeting .wrap{gap:0 25px}#greeting .couple{padding-left:25px;gap:10px}.person-monogram{width:60px;height:80px}.person h3{font-size:20px}#story{gap:6vw;padding:80px 6vw}.story-photo img{height:500px}#details{gap:30px;padding:65px 5vw}.evening-photo{padding:25px}.evening-photo p{font-size:29px}#rsvp{gap:6vw;padding:80px 6vw}}@media(max-width:600px){nav{height:66px;padding:12px 22px}.hero{margin-top:66px;height:auto;max-height:none;min-height:0;padding:0;display:flex;flex-direction:column}.hero-photo{position:relative;inset:auto;order:2;height:420px;width:100%}.hero-photo img{object-position:50% 60%}.hero-text{width:100%;height:auto;padding:45px 30px 35px;display:block}.hero .eyebrow{font-size:8px;margin-bottom:20px}.hero-script{font-size:21px;margin-bottom:16px}.hero h1{font-size:64px;line-height:.95}.hero h1 span[data-name]{display:inline}.hero h1 .amp{display:inline;font-size:.6em;margin:0;padding:0 7px}.hero h1 span[data-name=groom]{display:block;margin-top:6px}.hero-invite{font-size:11px;margin:22px 0 15px;max-width:300px}.hero-rsvp{width:145px}.hero-bottom{margin-top:25px;padding-top:16px;justify-content:space-between}.hero .date{max-width:none;font-size:9px}.hero .hanko{height:30px;width:30px;font-size:20px}.vertical-note{top:auto;bottom:220px;right:20px;z-index:3;font-size:12px}.photo-note{bottom:20px;right:20px;font-size:8px}.scroll-hint{left:20px;bottom:20px;font-size:7px}#snow{left:0;top:auto;bottom:0;width:100%;height:420px}.date-ribbon{padding:23px 20px;flex-wrap:wrap;justify-content:center;gap:18px}.date-ribbon>span{font-size:8px;text-align:center;width:100%}.date-ribbon>span:last-child{display:none}.countdown{gap:24px}.countdown b{font-size:26px}.countdown span{font-size:7px}section{padding:60px 26px}.heading h2{font-size:42px}.heading .jp{font-size:10px}#greeting{padding:40px 26px;margin:45px 22px;box-shadow:6px 7px #e6e0d3}#greeting:after{right:18px;top:20px;font-size:6px}.postcard-label{font-size:8px;margin:15px 0 30px}#greeting .wrap{display:block}#greeting p{font-size:12px;line-height:2}#greeting .couple{border-left:0;border-top:1px solid var(--line);padding:25px 0 0;margin:30px 0 0;gap:35px;display:flex}.person-monogram{height:85px;width:65px}.person h3{font-size:24px}#story{display:flex;flex-direction:column;padding:60px 30px;gap:45px}.story-photo{width:90%;margin:0 auto;padding:10px 10px 40px}.story-photo img{height:380px}.story-photo figcaption{font-size:16px;bottom:11px}.postmark{width:85px;height:85px;font-size:8px;right:-18px}.tl-item,.tl-item:nth-child(odd),.tl-item:nth-child(2n){padding-left:25px}.timeline:before{left:0}.tl-item h4{font-size:25px}#hana{display:flex;flex-direction:column}.flower-photo{height:310px;min-height:310px;background-position:center 45%}#hana .wrap{padding:45px 30px}.hana-intro{font-size:16px}.hana-item{padding:22px 8px}.hana-item h4{font-size:20px}.hana-item p{font-size:10px}#details{display:block;padding:0}.evening-photo{min-height:0;height:340px;background-position:center 65%;padding:30px;flex-direction:row;align-items:flex-end}.evening-photo p{font-size:32px}.evening-photo>span{align-self:flex-start;font-size:25px}#details .wrap{padding:45px 28px}.cards{grid-template-columns:1fr 1fr;gap:0}.card{padding:22px 14px 22px 0}.card p{font-size:11px}.card h3{font-size:25px}.map{height:200px}#gallery{padding:60px 23px 75px}#gallery .heading{margin-bottom:35px}.grid{grid-template-columns:1fr 1fr;grid-auto-rows:180px;gap:20px}.grid figure{border:7px solid #fffdf6;border-bottom-width:33px}.grid figure.wide{grid-column:span 2}.grid figure.tall{grid-row:span 2}.grid figcaption{font-size:12px;bottom:-28px}#rsvp{display:block;padding:55px 28px}.rsvp-note{padding:0}.rsvp-note h2{font-size:64px;margin:22px 0}.rsvp-note p{font-size:12px}.rsvp-flower{font-size:65px;margin:15px 0}.rsvp-box{margin-top:25px}.music-control{bottom:12px;right:12px;padding:10px 13px;font-size:9px}.row2{grid-template-columns:1fr 1fr}.choice label{font-size:11px}footer .names{font-size:32px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}.hero{display:block;min-height:760px;height:calc(100svh - 90px);color:#fffaf1;text-align:center;background:#547d91}.hero-photo{position:absolute;inset:0;width:100%;height:100%}.hero-photo img{object-position:50% 62%;filter:saturate(.7) brightness(.9)}.hero-photo:after{background:linear-gradient(180deg,rgba(17,40,55,.44),rgba(17,40,55,.2) 45%,transparent 72%,rgba(17,40,55,.3))}.hero-text{position:relative;z-index:4;width:100%;height:100%;padding:75px 70px 85px;align-items:center;justify-content:flex-start;text-shadow:0 2px 22px #17334745}.hero .eyebrow{margin-bottom:22px;color:#fffaf1;opacity:1}.hero-script{color:#f4e7da;margin-bottom:18px}.hero h1{font-size:clamp(62px,7.5vw,112px);line-height:1.05;max-width:1200px}.hero h1 span[data-name]{display:inline}.hero h1 .amp{display:inline;padding:0 .18em;margin:0;font-size:.7em;color:#f4dfd8}.hero-invite{font-size:15px;line-height:1.9;max-width:480px;margin:25px 0 22px;text-wrap:balance}.hero-rsvp{border-color:#fffaf1;color:#fffaf1;width:160px}.hero-bottom{position:absolute;bottom:50px;left:50%;transform:translate(-50%);width:auto;min-width:300px;justify-content:center;gap:25px;border:0;padding:0;margin:0}.hero .date{color:#fffaf1;font-size:11px;max-width:none}.hero .hanko{background:#985b51d9;text-shadow:none;flex-shrink:0}#snow{inset:0;width:100%;height:100%;opacity:.7;z-index:2}.vertical-note{z-index:4;top:40px;bottom:auto;pointer-events:none}.scroll-hint{left:28px;bottom:28px;z-index:5}.photo-note{z-index:3;bottom:25px;font-size:8px}@media(max-width:900px){.hero-text{padding:90px 50px 85px}.hero h1{font-size:78px}.hero-invite{font-size:14px}}@media(max-width:600px){.hero{margin-top:66px;min-height:730px;height:calc(100svh - 66px);max-height:1000px;display:block}.hero-photo{position:absolute;inset:0;width:100%;height:100%;order:initial}.hero-photo img{object-position:50% 65%}.hero-text{display:flex;width:100%;height:100%;padding:65px 28px 125px;align-items:center;justify-content:flex-start}.hero .eyebrow{font-size:8px;margin-bottom:20px;letter-spacing:.2em}.hero-script{font-size:20px;margin-bottom:18px}.hero h1{font-size:clamp(50px,12vw,72px);line-height:1}.hero h1 span[data-name],.hero h1 span[data-name=groom]{display:block;margin:0}.hero h1 .amp{display:block;font-size:.65em;padding:6px 0}.hero-invite{font-size:13px;max-width:310px;margin:24px 0 20px}.hero-rsvp{width:135px;font-size:9px}.hero-bottom{bottom:70px;gap:15px;min-width:0;width:calc(100% - 55px)}.hero .date{font-size:9px;max-width:230px;text-align:left}#snow{inset:0;width:100%;height:100%}.vertical-note{top:28px;right:14px;bottom:auto;font-size:10px;letter-spacing:.3em}.scroll-hint{left:20px;bottom:25px;font-size:6px}.photo-note{right:16px;bottom:20px;font-size:6px}}.hero-text{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);justify-content:stretch;justify-items:center;align-items:initial;padding:95px 60px}.hero-prelude{align-self:end;padding-bottom:22px}.hero-prelude .eyebrow{margin-bottom:16px}.hero-prelude .hero-script{margin-bottom:0}.hero h1{grid-row:2;margin:0;text-align:center}.hero-followup{align-self:start;display:flex;flex-direction:column;align-items:center}.hero-followup .hero-invite{margin:24px 0 18px}@media(max-width:600px){.hero-text{display:grid;padding:105px 25px;grid-template-rows:minmax(0,1fr) auto minmax(0,1fr)}.hero-prelude{padding-bottom:22px}.hero-prelude .eyebrow{margin-bottom:12px}.hero-prelude .hero-script{font-size:18px}.hero-followup .hero-invite{margin:20px 0 14px}}.hero{margin-top:0;height:100svh}.floating-language{position:fixed;top:22px;left:24px;z-index:50;background:#fbf8f0e8;border:1px solid #ffffff70;border-radius:2px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 12px #17334712}.floating-language button{padding:8px 11px;font-size:9px}@media(max-width:600px){.hero{margin-top:0;height:100svh}.floating-language{top:16px;left:16px}.floating-language button{padding:7px 10px}}.countdown-card{height:100svh;min-height:760px;max-height:1100px;margin:0;padding:70px 35px 190px;overflow:hidden;background:#e9eade;color:#344c4b;display:flex;align-items:center;justify-content:center;text-align:center;isolation:isolate;border-bottom:1px solid #344c4b26}.countdown-card:before{content:"";position:absolute;inset:20px;border:1px solid #7f91754a;z-index:-1;pointer-events:none}.countdown-postmark{position:absolute;top:42px;left:45px;font-size:8px;letter-spacing:.22em;color:#74836e}.countdown-content{width:100%;max-width:1050px}.station-clock{width:130px;height:130px;margin:0 auto 12px;filter:drop-shadow(0 6px 10px #4c604518)}.station-clock svg{width:100%;height:100%}.clock-rim{fill:#f9f8ef;stroke:#52685f;stroke-width:2}.clock-inner{fill:none;stroke:#a7b09b;stroke-width:.5}.clock-ticks{stroke:#52685f;stroke-width:1.3}.clock-hour,.clock-minute{stroke:#344c4b;stroke-linecap:round;transform-origin:70px 70px}.clock-hour{stroke-width:3.5}.clock-minute{stroke-width:2}.clock-second{stroke:#ad6f5f;stroke-width:1;transform-origin:70px 70px}.clock-pin{fill:#ad6f5f}.japan-time-label{display:block;font-size:7px;letter-spacing:.18em;color:#74836e}.japan-time-label span{margin-left:7px;font-variant-numeric:tabular-nums}.countdown-eyebrow{font-size:8px;letter-spacing:.2em;margin:32px 0 13px;color:#6f7b68}.countdown-card h2{font:400 clamp(38px,4vw,62px)/1.15 var(--serif);letter-spacing:-.025em}.countdown-card .countdown{display:flex;align-items:flex-start;justify-content:center;gap:24px;margin:34px 0 20px;flex-wrap:nowrap}.countdown-card .countdown div{width:150px;min-width:0;padding:0;background:none;border:0}.countdown-card .countdown b{font:400 clamp(70px,8.5vw,126px)/1 var(--serif);letter-spacing:-.05em;font-variant-numeric:tabular-nums}.countdown-card .countdown span{display:block;margin-top:15px;font-size:8px;letter-spacing:.25em}.countdown-card .countdown i{font:normal 48px/1.5 var(--serif);color:#9ca68f}.countdown-message{font:italic 19px/1.6 var(--serif);color:#73806b;margin-top:30px}.train-scene{position:absolute;bottom:75px;left:0;right:0;height:100px}.train-wire{position:absolute;top:0;left:0;right:0;border-top:1px solid #74836e35}.train-track{position:absolute;bottom:17px;left:0;right:0;height:5px;border-top:2px solid #52685f;border-bottom:1px solid #52685f55;box-shadow:0 5px #74836e22}.train-track:after{content:"";position:absolute;top:5px;left:0;width:100%;height:5px;background:repeating-linear-gradient(90deg,transparent 0 24px,#52685f44 24px 27px)}.shinkansen{position:absolute;bottom:21px;left:0;width:700px;max-width:none;animation:train-journey 25s linear infinite;will-change:transform}.shinkansen svg{display:block;width:100%;height:auto}.platform-label,.destination-label{position:absolute;bottom:-27px;font-size:7px;letter-spacing:.18em;color:#74836e}.platform-label{left:45px}.destination-label{right:45px}.countdown-footer{position:absolute;bottom:26px;left:45px;right:45px;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.12em;color:#74836e}.countdown-footer>span:first-child{font-family:var(--mincho)}html[lang=ja] .countdown-card h2{font-family:var(--mincho);font-size:clamp(28px,3.2vw,46px)}@keyframes train-journey{0%{transform:translate(-720px)}to{transform:translate(100vw)}}@media(max-width:600px){.countdown-card{min-height:730px;max-height:1000px;height:100svh;padding:75px 25px 180px}.countdown-card:before{inset:13px}.countdown-postmark{left:28px;top:32px;font-size:7px}.station-clock{width:115px;height:115px}.countdown-eyebrow{font-size:7px;margin-top:28px;letter-spacing:.13em}.countdown-card h2{font-size:38px}.countdown-card .countdown{gap:7px;margin-top:32px}.countdown-card .countdown div{width:23%;max-width:90px}.countdown-card .countdown b{font-size:clamp(43px,12vw,70px)}.countdown-card .countdown span{font-size:7px;letter-spacing:.1em;margin-top:11px}.countdown-card .countdown i{font-size:27px;line-height:1.7}.countdown-message{font-size:17px;max-width:270px;margin:24px auto 0}.shinkansen{width:510px;animation-duration:19s}.train-scene{bottom:85px;height:70px}.platform-label{left:28px;font-size:6px}.destination-label{right:28px;font-size:6px}.countdown-footer{left:28px;right:28px;bottom:27px;font-size:7px;flex-direction:column;gap:5px;text-align:center}html[lang=ja] .countdown-card h2{font-size:26px}}@media(prefers-reduced-motion:reduce){.shinkansen{animation:none;left:50%;transform:translate(-50%)}}.countdown-card{background:radial-gradient(ellipse at 16% 12%,#f9e2dbcc 0%,transparent 48%),radial-gradient(ellipse at 84% 20%,#bfd5e0b3 0%,transparent 52%),radial-gradient(ellipse at 50% 48%,#fffdf3e6 0%,transparent 55%),radial-gradient(ellipse at 78% 100%,#aabfb59e 0%,transparent 50%),linear-gradient(155deg,#f3e8df,#e8eff0 45%,#ecebd9 73%,#c4d2c8)}.station-clock{filter:drop-shadow(0 12px 20px #3f596b26) drop-shadow(0 2px 3px #ffffffb3)}.countdown-card .countdown b{text-shadow:0 2px 0 #ffffff80,0 8px 25px #536c6812}.story-photo img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;filter:none}#story{background-color:#172b25;background-image:linear-gradient(90deg,#0c1f187a,#0c1f18b3 48%,#0c1f18e6),url(/images/bamboo-path.jpg);background-size:cover;background-position:center 72%;color:#faf5e8}#story .heading h2,#story .tl-item h4{color:#faf5e8}#story .heading .jp,#story .tl-item .when{color:#d7c5a1}#story .tl-item p{color:#e2e6d9}#story .timeline:before{background:#c8cfb5;opacity:.45}#story .tl-item:before{background:#243e31;border-color:#d7c5a1}#story .story-photo{box-shadow:0 20px 60px #07191066;color:var(--ai)}@media(max-width:600px){#story{background-image:linear-gradient(180deg,#0c1f186b,#0c1f18c7 45%,#0c1f18eb),url(/images/bamboo-path.jpg);background-position:center}}#story.story-scroll-ready .story-photo{opacity:var(--story-opacity,1);transform:translate3d(var(--story-x,0px),var(--story-y,0px),0) rotate(var(--story-rotate,-3deg)) scale(var(--story-scale,1));transition:none}#story.story-scroll-ready .heading,#story.story-scroll-ready .tl-item{opacity:var(--story-opacity,1);transform:translate3d(var(--story-x,0px),var(--story-y,0px),0);transition:none}@media(prefers-reduced-motion:reduce){#story.story-scroll-ready .story-photo{opacity:1;transform:rotate(-3deg)}#story.story-scroll-ready .heading,#story.story-scroll-ready .tl-item{opacity:1;transform:none}}.countdown-card{color:#fffaf1;background-color:#547d91;background-image:linear-gradient(180deg,#18314394,#18314359 55%,#1831439e),url(/images/fuji.jpg);background-size:cover;background-position:center 42%}.countdown-card:before{border-color:#fffaf130}.countdown-card .countdown-postmark,.countdown-card .japan-time-label,.countdown-card .countdown-eyebrow,.countdown-card .countdown-message,.countdown-card .platform-label,.countdown-card .destination-label,.countdown-card .countdown-footer{color:#f2ebdf}.countdown-card h2,.countdown-card .countdown b{color:#fffaf1;text-shadow:0 3px 24px #17334755}.countdown-card .countdown i{color:#fffaf180}.countdown-card .countdown span{opacity:1}.countdown-card .station-clock{filter:drop-shadow(0 8px 24px #17334755)}.countdown-card .train-wire{border-color:#fffaf135}.countdown-card .train-track{border-top-color:#fffaf18c;border-bottom-color:#fffaf155;box-shadow:0 5px #fffaf122}.countdown-card .train-track:after{background:repeating-linear-gradient(90deg,transparent 0 24px,#fffaf155 24px 27px)}#story{background-color:#354f60;background-image:linear-gradient(90deg,#152c3b70,#152c3bb3 48%,#152c3bdb),url(/images/fuji.jpg);background-size:cover;background-position:center 65%}#story .heading .jp,#story .tl-item .when{color:#edd5c9}#story .tl-item p{color:#f1eee5}#story .timeline:before{background:#eee3d3}#story .tl-item:before{background:#354f60;border-color:#edd5c9}@media(max-width:600px){.countdown-card{background-position:42% 60%}#story{background-image:linear-gradient(180deg,#152c3b66,#152c3bb8 45%,#152c3be3),url(/images/fuji.jpg);background-position:56% center}}.countdown-card{background-color:#6f6576;background-image:linear-gradient(180deg,#23233966,#23233940 48%,#19282fa1),url(/images/garden.jpg);background-position:center 53%}#story{background-color:#3d3b39;background-image:linear-gradient(90deg,#1c202366,#1c2023a6 48%,#1c2023db),url(/images/kyoto.jpg);background-position:center 55%}#story .tl-item:before{background:#3d3b39}@media(max-width:600px){.countdown-card{background-position:center 50%}#story{background-image:linear-gradient(180deg,#1c20235c,#1c2023ba 45%,#1c2023e6),url(/images/kyoto.jpg);background-position:53% center}}#details{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:8vw;min-height:100svh;padding:100px 8vw;background:linear-gradient(90deg,#2a232db3,#3728306b),url(/images/blossoms.jpg) center/cover;color:#fff9ef}.details-intro{max-width:460px}.details-number{display:block;font-size:8px;letter-spacing:.22em;margin-bottom:65px;color:#ebddd0}#details .details-intro .heading{margin-bottom:25px}#details .details-intro .heading h2{font-size:clamp(58px,6.2vw,90px);line-height:.98;color:#fff9ef;max-width:430px}#details .details-intro .heading .jp{color:#efd9ca;margin-bottom:22px}.details-poem{font:italic 27px/1.5 var(--serif);white-space:pre-line;color:#f3e5dc}.details-date{display:flex;align-items:center;gap:20px;border-top:1px solid #f3e5dc55;margin-top:50px;padding-top:25px}.details-date p{font-size:11px;line-height:1.9;letter-spacing:.05em}.details-date-mark{font:30px var(--mincho);color:#f6d0b9}.celebration-paper{position:relative;width:100%;max-width:600px;padding:38px 42px 28px;background:#fbf8f0;color:#43473d;border:1px solid #ded1ba;box-shadow:10px 12px #fbf8f026,0 25px 70px #21192340}.celebration-paper:before{content:"";position:absolute;inset:11px;border:1px solid #bdae8d44;pointer-events:none}.paper-topline{display:flex;align-items:center;justify-content:space-between;padding-bottom:23px;border-bottom:1px solid #a393733d;font-size:9px;letter-spacing:.16em;color:#897050}.paper-topline>span:last-child{font:22px var(--mincho);color:#9b6659}.schedule-event{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:27px 0;border-bottom:1px solid #a393733d}.schedule-time>span{font:22px/1.2 var(--serif);white-space:nowrap}.schedule-time small{display:block;font:8px var(--sans);letter-spacing:.2em;color:#a89475;margin-top:12px}.schedule-event h3,.celebration-venue h3{font:400 30px/1.2 var(--serif);margin-bottom:9px}.schedule-event p,.celebration-venue p,.celebration-dress p{font-size:11px;line-height:1.9;color:#757566}.celebration-venue{padding:24px 0 20px}.details-small-label{display:block;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#9b6659;margin-bottom:10px}.celebration-venue h3{font-size:25px}.celebration-dress{padding-bottom:22px;border-bottom:1px solid #a393733d}.details-actions{display:flex;flex-wrap:wrap;gap:22px;margin:22px 0}.details-actions a{display:flex;align-items:center;justify-content:space-between;gap:15px;text-decoration:none;font-size:9px;letter-spacing:.05em;padding-bottom:7px;border-bottom:1px solid #a3937370;flex:1;min-width:120px;position:relative}.details-actions a:hover{color:#9b6659}.details-actions a>span:last-child{font-size:17px}.venue-map{position:relative}.venue-map summary{font-size:10px;color:#757566;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.venue-map .map{width:100%;height:200px;margin:15px 0 0;border:1px solid #a393733d;opacity:1;filter:grayscale(.5)}.paper-signoff{display:block;text-align:center;font:italic 17px/1.5 var(--serif);color:#9b6659;margin-top:25px}html[lang=ja] #details .details-intro .heading h2{font:400 clamp(32px,3.5vw,48px)/1.5 var(--mincho)}html[lang=ja] .details-poem{font:17px/2 var(--mincho)}html[lang=ja] .schedule-event h3,html[lang=ja] .celebration-venue h3{font-family:var(--mincho);font-size:22px}html[lang=ja] .paper-signoff{font:12px/1.8 var(--mincho)}@media(max-width:1000px){#details{gap:5vw;padding:85px 5vw;grid-template-columns:.85fr 1.15fr}.celebration-paper{padding:30px}.schedule-event{gap:14px;grid-template-columns:85px 1fr}.schedule-time>span{font-size:20px}}@media(max-width:600px){#details{display:block;padding:60px 25px 70px;background-position:35% center}.details-intro{max-width:none;margin-bottom:40px}.details-number{margin-bottom:35px;font-size:7px}#details .details-intro .heading h2{font-size:60px;max-width:300px}.details-poem{font-size:23px}.details-date{margin-top:25px;padding-top:18px}.details-date p{font-size:10px}.celebration-paper{padding:30px 27px 25px;box-shadow:6px 8px #fbf8f026,0 20px 40px #21192340}.schedule-event{grid-template-columns:75px 1fr;gap:14px;padding:24px 0}.schedule-time>span{font-size:18px}.schedule-event h3{font-size:27px}.schedule-event p,.celebration-venue p,.celebration-dress p{font-size:11px}.details-actions{gap:16px}.details-actions a{font-size:8px;min-width:100px}.paper-signoff{font-size:16px}html[lang=ja] #details .details-intro .heading h2{font-size:34px}}#story{background-position:center,center calc(55% + 150px);background-repeat:no-repeat}@media(max-width:600px){#story{background-position:center,53% calc(50% + 280px)}}#gallery .grid img,#gallery .grid figure:hover img{filter:none}#gallery .grid figure.tall img{object-position:center 65%}.countdown-card{background-image:linear-gradient(180deg,#23233929,#23233914 48%,#19282f52),url(/images/garden.jpg)}.countdown-card .countdown b,.countdown-card h2{text-shadow:0 2px 16px #29273b80}#story{background-position:center,center 55%;background-size:cover,cover}@media(max-width:600px){#story{background-position:center,53% center}}#gifts{display:grid;grid-template-columns:1.2fr 1fr;gap:9vw;align-items:center;padding:100px 12vw;background:radial-gradient(ellipse at 0 100%,#ead8cd88,transparent 65%),#f7f3e9;border-top:1px solid #ac927733;color:var(--ai)}.gift-copy{max-width:530px}.gift-eyebrow{display:block;font-size:9px;letter-spacing:.2em;color:var(--shu);margin-bottom:26px}.gift-copy h2{font:400 clamp(43px,4.6vw,66px)/1.05 var(--serif);letter-spacing:-.035em;margin-bottom:26px}.gift-copy>p{max-width:390px;font-size:13px;line-height:2;color:#737367}.gift-copy .gift-signoff{font:italic 22px/1.5 var(--serif);color:var(--shu);margin-top:24px}.gift-qr-paper{position:relative;padding:43px 32px 30px;background:#fffdf6;border:1px solid #cbb99d77;text-align:center;max-width:370px;justify-self:center;width:100%;box-shadow:7px 9px #d9cbb62e;transform:rotate(1.5deg)}.gift-seal{display:grid;place-items:center;position:absolute;top:-18px;left:calc(50% - 18px);width:36px;height:36px;background:var(--shu);color:#fffaf1;font:23px var(--mincho);transform:rotate(-5deg)}.gift-qr-frame{max-width:245px;aspect-ratio:1;margin:auto;background:#fff;padding:12px;border:1px solid #a3937333;display:grid;place-items:center}.gift-qr-frame img{width:100%;height:100%;object-fit:contain}.gift-qr-frame [hidden]{display:none!important}#giftQrPlaceholder{color:#9a8c74}#giftQrPlaceholder>span{font:56px var(--mincho);color:#b7aa91}#giftQrPlaceholder p{font-size:10px;letter-spacing:.04em;margin-top:15px}.gift-qr-label{font:italic 17px/1.5 var(--serif);color:#9b6659;margin-top:20px}.gift-qr-names{display:block;font:20px var(--serif);margin-top:10px}html[lang=ja] .gift-copy h2{font:400 clamp(27px,3vw,40px)/1.6 var(--mincho)}html[lang=ja] .gift-copy .gift-signoff{font:14px/1.9 var(--mincho)}html[lang=ja] .gift-qr-label{font:12px/1.8 var(--mincho)}@media(max-width:600px){#gifts{grid-template-columns:1fr;padding:60px 30px 70px;gap:45px}.gift-copy h2{font-size:48px}.gift-copy>p{font-size:12px}.gift-copy .gift-signoff{font-size:21px}.gift-qr-paper{max-width:320px;padding:38px 28px 27px}.gift-qr-frame{max-width:220px}.gift-eyebrow{font-size:8px}.gift-qr-names{font-size:19px}}#gallery{background:linear-gradient(#13291dc2,#13291de0),url(/images/bamboo-path.jpg) center 65%/cover;color:#fff7e8}#gallery .heading h2{color:#fff7e8}#gallery .heading .jp{color:#dfcba8}#gallery .grid figure{box-shadow:0 12px 32px #07191066}#gallery .grid figcaption{color:var(--ai)}#gifts{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 55% 10%,#fff8edcc,transparent 75%),#dfcfbc;padding-bottom:290px;border-top:0}#gifts:before{content:"";position:absolute;left:0;right:0;bottom:0;height:290px;z-index:-1;background:url(/images/gifts-background.jpg) left 65%/cover no-repeat;mask-image:linear-gradient(transparent,#000 35%);-webkit-mask-image:linear-gradient(transparent,black 35%);pointer-events:none}#gifts .gift-copy,#gifts .gift-qr-paper{position:relative;z-index:1}#gifts .gift-copy>p{color:#5c5b50}#gifts .gift-copy .gift-signoff{color:#8a554c}#rsvp{position:relative;isolation:isolate;background:#eeece6;overflow:hidden}#rsvp:before{content:"";position:absolute;inset:-8px;z-index:-1;background:linear-gradient(90deg,#f9f6eee0,#f9f6eedb),url(/images/rsvp-stationery.jpg) center 60%/cover;filter:blur(2px);pointer-events:none}#rsvp .rsvp-note{position:relative}#rsvp .rsvp-flower{color:#a28b66}#rsvp .rsvp-box{padding:35px;background:#fffdf5ed;border:1px solid #b7a78b66;box-shadow:8px 10px #b7a78b20}#rsvp .rsvp-box .deadline{font-size:19px}footer{background:radial-gradient(circle at 18% 25%,#e1c99466 0 1px,transparent 2px),radial-gradient(circle at 82% 32%,#e1c99488 0 1px,transparent 2px),radial-gradient(circle at 70% 12%,#e1c99455 0 1px,transparent 2px),radial-gradient(circle at 35% 60%,#e1c99455 0 1px,transparent 2px),radial-gradient(ellipse at 50% 120%,#4b5268,transparent 70%),linear-gradient(160deg,#1b2539,#2c3946)}@media(max-width:600px){#gallery{background-position:center}#gifts{padding-bottom:230px}#gifts:before{height:215px;background-size:auto 350px;background-position:left 60%}#rsvp:before{background-image:linear-gradient(#f9f6eee6,#f9f6eede),url(/images/rsvp-stationery.jpg);background-position:center}#rsvp .rsvp-box{padding:25px 20px;margin-top:25px}}#gallery{background-color:#f4e7df;background-image:linear-gradient(110deg,#fff9f0de,#faede6c4),url(/images/blossoms.jpg);background-position:center;background-size:cover;color:var(--ai)}#gallery .heading h2{color:var(--ai)}#gallery .heading .jp{color:var(--shu)}#gallery .grid figure{box-shadow:0 10px 28px #765b4926}.countdown-card .station-clock{width:210px;height:210px;margin-bottom:16px}.countdown-card .countdown-eyebrow{margin-top:24px}@media(max-width:600px){.countdown-card .station-clock{width:170px;height:170px;margin-bottom:13px}.countdown-card .countdown-eyebrow{margin-top:20px}}
