@font-face{font-family:"Bloom Serif";src:local("Songti SC"),local("STSong"),local("Noto Serif CJK SC")}:root{font-family:"Bloom Serif",Songti SC,Georgia,serif;color:#463b32;background:#eee7db;font-synthesis:none;--paper: #f3eee5;--paper-warm: #ece2d4;--ink: #463b32;--muted: #85796c;--line: rgba(70, 59, 50, .22);--peach: #d99778;--moss: #233d33;--serif: "Bloom Serif", "Songti SC", "STSong", serif;--roman: Baskerville, "Iowan Old Style", "Times New Roman", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}[data-reveal]{opacity:1;transform:translateY(0)}[data-reveal].is-visible{animation:reveal-in 1s cubic-bezier(.2,.7,.2,1) both}@keyframes reveal-in{0%{opacity:.18;transform:translateY(34px)}to{opacity:1;transform:translateY(0)}}.eyebrow{font-family:var(--roman);font-size:10px;letter-spacing:.22em;text-transform:uppercase}.hero{position:relative;min-height:100svh;overflow:hidden;background:#f3eee5;border-bottom:1px solid var(--line)}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 100px #63463014;pointer-events:none}.hero-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.9;animation:heroBreath 11s ease-in-out infinite alternate}@keyframes heroBreath{0%{transform:scale(1.01);filter:saturate(.86) blur(0)}to{transform:scale(1.055) translateY(-.5%);filter:saturate(.96) blur(1.2px)}}.site-header{position:relative;z-index:4;display:flex;align-items:flex-start;justify-content:space-between;width:100%;padding:28px 3.4vw}.brand{display:inline-flex;flex-direction:column;gap:3px}.brand b{font-size:27px;font-weight:400;letter-spacing:.16em;line-height:1}.brand span{font-family:var(--roman);font-size:8px;letter-spacing:.45em}.site-header nav{display:flex;align-items:center;gap:clamp(22px,3vw,54px);padding-top:3px}.site-header nav a,.site-header nav button{position:relative;padding:6px 0;border:0;background:none;font-size:13px;letter-spacing:.18em;cursor:pointer}.site-header nav a:after,.site-header nav button:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--ink);transition:right .35s ease}.site-header nav a:hover:after,.site-header nav button:hover:after{right:0}.mobile-menu{display:none;border:0;background:transparent;letter-spacing:.2em}.hero-copy{position:relative;z-index:3;width:min(760px,82vw);margin:clamp(80px,15vh,150px) auto 0;text-align:center}.hero-copy .eyebrow{margin-bottom:24px;opacity:.64}.hero h1{margin:0;font-size:clamp(58px,6.6vw,105px);line-height:1.2;font-weight:300;letter-spacing:.08em;text-shadow:0 2px 20px rgba(255,255,255,.45)}.hero-en{margin:22px 0 28px;font-family:var(--roman);font-size:clamp(15px,1.25vw,19px);letter-spacing:.04em;line-height:1.45}.outline-action,.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 28px;border:1px solid rgba(70,59,50,.72);background:#f3eee585;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.13em;cursor:pointer;transition:background .3s ease,color .3s ease,transform .3s ease}.outline-action:hover,.primary-action:not(:disabled):hover{color:var(--paper);background:var(--ink);transform:translateY(-2px)}.hero-side-note{position:absolute;z-index:3;left:2vw;top:18%;bottom:14%;display:flex;flex-direction:column;align-items:center;gap:12px;font-family:var(--roman);font-size:9px;letter-spacing:.15em}.hero-side-note i{flex:1;width:1px;background:var(--line)}.hero-side-note em{writing-mode:vertical-rl;transform:rotate(180deg);font-style:normal}.hero-stamp{position:absolute;z-index:3;right:4.3vw;top:44%;display:grid;place-items:center;width:86px;height:86px;border:1px solid rgba(70,59,50,.2);border-radius:50%;transform:rotate(7deg)}.hero-stamp:after{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border:1px solid rgba(70,59,50,.18);border-radius:inherit}.hero-stamp span{font-family:var(--roman);font-size:7px;letter-spacing:.2em}.hero-stamp b{font-size:22px;font-weight:400;line-height:.6}.scroll-cue{position:absolute;z-index:3;bottom:24px;left:50%;display:flex;flex-direction:column;align-items:center;gap:5px;font-family:var(--roman);font-style:italic;font-size:10px;transform:translate(-50%)}.paper-section{position:relative;padding:clamp(90px,11vw,170px) clamp(28px,5vw,86px);overflow:hidden;background-color:var(--paper)}.paper-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.22;background:radial-gradient(circle at 30% 10%,rgba(210,159,120,.12),transparent 35%),radial-gradient(circle at 90% 70%,rgba(85,96,65,.08),transparent 30%)}.stage-heading{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:end;gap:40px;max-width:1320px;margin:0 auto 82px}.stage-heading>span{align-self:start;font-family:var(--roman);font-size:10px;letter-spacing:.22em}.stage-heading h2,.section-intro h2,.section-line h2,.care h2{margin:0;font-weight:300;font-size:clamp(44px,4.7vw,76px);line-height:1.2;letter-spacing:.08em}.stage-heading>p{max-width:300px;margin:0;font-size:13px;line-height:2;color:var(--muted)}.translation{padding-bottom:150px}.translation-flow{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .55fr 1fr;align-items:start;gap:clamp(26px,4vw,70px);max-width:1320px;margin:0 auto}.translation-step{position:relative;z-index:2}.translation-step header{display:flex;align-items:baseline;gap:12px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:10px}.translation-step header b{font-family:var(--roman);font-size:28px;font-style:italic;font-weight:400}.translation-step header>span{font-size:18px;letter-spacing:.15em}.translation-step header small{display:block;margin-top:3px;font-family:var(--roman);font-size:8px;letter-spacing:.12em}.translation-step>p{margin:18px 0 0;font-size:12px;color:var(--muted);line-height:1.8}.source-frame{position:relative;aspect-ratio:.9;overflow:hidden;border:10px solid #f7f2e9;box-shadow:0 12px 38px #41302329;transform:rotate(-1.3deg)}.source-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.65) blur(.4px)}.focus-lens{position:absolute;left:var(--mx);top:var(--my);display:grid;place-items:center;width:112px;aspect-ratio:1;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:#ffffff14;-webkit-backdrop-filter:blur(1px) saturate(1.15);backdrop-filter:blur(1px) saturate(1.15);transform:translate(-50%,-50%);pointer-events:none;transition:left .08s linear,top .08s linear}.focus-lens span{padding:3px 7px;color:#fff;background:#302a244d;font-size:9px;letter-spacing:.12em}.palette-step{margin-top:15%}.palette-list{padding:10px 14px;background:#ffffff42;border-left:1px solid var(--line)}.palette-list>div{display:grid;grid-template-columns:1fr 38px;align-items:center;gap:12px;min-height:55px;border-bottom:1px solid rgba(70,59,50,.1)}.palette-list i{width:100%;height:22px;box-shadow:inset 0 0 14px #ffffff40}.palette-list span{font-size:10px;letter-spacing:.16em}.bloom-step{margin-top:5%}.bloom-step figure{position:relative;margin:0;aspect-ratio:.78;overflow:hidden;background:#ded7c9;transform:rotate(.8deg);box-shadow:0 12px 36px #41302321}.bloom-step img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.bloom-step figcaption{position:absolute;right:12px;bottom:12px;padding:5px 9px;background:#f4eee4c7;font-size:9px;letter-spacing:.14em}.thread-line{position:absolute;z-index:0;left:29%;right:24%;top:54%;height:1px;background:linear-gradient(90deg,#cd6f4c1a,#cb7656 38%,#82906d 75%,#82906d26);transform:rotate(2deg)}.archive{padding-top:120px;border-top:1px solid var(--line)}.section-intro{position:relative;z-index:2;width:min(310px,100%)}.section-intro h2{margin:12px 0 20px}.section-intro>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted)}.section-intro a,.section-line a,.care-copy a{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding-bottom:5px;border-bottom:1px solid var(--ink);font-size:12px;letter-spacing:.12em}.archive-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:72px;gap:20px;max-width:1320px;margin:-120px auto 0}.archive-card{position:relative;z-index:1}.archive-card.card-1{grid-column:4 / span 4;grid-row:1 / span 5}.archive-card.card-2{grid-column:8 / span 5;grid-row:2 / span 4}.archive-card.card-3{grid-column:1 / span 4;grid-row:6 / span 5}.archive-card.card-4{grid-column:5 / span 4;grid-row:7 / span 4}.archive-card.card-5{grid-column:9 / span 4;grid-row:6 / span 5}.archive-image{position:relative;width:100%;height:calc(100% - 64px);overflow:hidden;background:#d8d0c1}.archive-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .7s ease}.archive-image>span{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:5px;padding:7px 10px;color:var(--paper);background:#2d372db8;font-size:9px;letter-spacing:.12em;opacity:0;transform:translateY(8px);transition:.35s ease}.archive-card:hover .archive-image img{transform:scale(1.035);filter:saturate(1.08)}.archive-card:hover .archive-image>span{opacity:1;transform:translateY(0)}.card-meta{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:10px 4px 0}.card-meta h3{margin:0;font-size:15px;font-weight:400;letter-spacing:.1em}.card-meta i{font-family:var(--roman);font-size:10px;color:var(--muted)}.color-dots{display:flex;gap:5px}.color-dots b{width:9px;height:9px;border-radius:50%}.margin-poem{position:absolute;right:20px;top:45%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.24em;color:var(--muted)}.seasonal{border-top:1px solid var(--line);padding-left:0;padding-right:0}.season-word{position:absolute;top:64px;right:-10px;font-family:var(--roman);font-size:clamp(110px,17vw,260px);line-height:1;color:#463b320e}.section-line{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;margin:0 max(28px,5vw) 60px}.section-line .eyebrow{margin:0 0 10px}.flower-rail{position:relative;z-index:2;display:flex;align-items:flex-end;gap:1px;overflow-x:auto;padding:20px 7vw 36px;scroll-snap-type:x mandatory;scrollbar-width:none}.flower-rail::-webkit-scrollbar{display:none}.flower-rail article{flex:0 0 235px;scroll-snap-align:center;background:#ffffff29;border-right:1px solid var(--line)}.flower-rail article.featured-flower{flex-basis:330px;transform:translateY(-18px);box-shadow:0 15px 30px #3d2f2521}.flower-rail img{width:100%;height:330px;object-fit:cover;filter:saturate(.74) sepia(.08);transition:.5s ease}.flower-rail .featured-flower img{height:440px}.flower-rail article:hover img{filter:saturate(1)}.flower-rail article>div{padding:16px}.flower-rail h3{display:inline;margin:0;font-size:16px;font-weight:400;letter-spacing:.1em}.flower-rail i{display:block;margin:4px 0 10px;font-family:var(--roman);font-size:10px;color:var(--muted)}.flower-rail p{margin:0;font-size:10px;line-height:1.7}.rail-controls{display:flex;align-items:center;justify-content:center;gap:18px}.rail-controls button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;transition:.3s ease}.rail-controls button:hover{color:var(--paper);background:var(--ink)}.rail-controls span{font-family:var(--roman);font-size:9px;letter-spacing:.22em}.care{display:grid;grid-template-columns:.7fr 1.4fr 1fr;gap:clamp(32px,5vw,76px);align-items:center;border-top:1px solid var(--line);background-color:#eee7db}.care-copy>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted)}.care-photo{position:relative;min-height:600px}.care-photo:before{content:"";position:absolute;top:6%;right:-5%;bottom:0;left:-5%;background:#e2d8c8;clip-path:polygon(3% 1%,98% 0,96% 99%,0 96%)}.care-photo img{position:absolute;top:9%;right:3%;bottom:4%;left:3%;width:94%;height:87%;object-fit:cover;filter:saturate(.66) sepia(.1)}.note{position:absolute;z-index:2;max-width:150px;padding:9px 12px;background:#f3eee5e0;box-shadow:0 5px 18px #463b3217;font-size:11px;line-height:1.5}.note b{margin-right:6px;font-family:var(--roman);font-size:18px;font-style:italic;font-weight:400}.note i{color:var(--muted);font-size:9px}.note-1{left:-6%;top:24%}.note-2{right:-8%;bottom:17%}.note-3{right:-6%;top:10%}.care-accordion article{border-top:1px solid var(--line)}.care-accordion article:last-of-type{border-bottom:1px solid var(--line)}.care-accordion button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:20px 2px;border:0;background:transparent;cursor:pointer;font-size:13px;letter-spacing:.08em;text-align:left}.care-accordion button svg{transition:transform .35s ease}.care-accordion .is-open button svg{transform:rotate(45deg)}.care-accordion article>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease}.care-accordion article>div p{min-height:0;overflow:hidden;margin:0;font-size:12px;color:var(--muted);line-height:1.9}.care-accordion article.is-open>div{grid-template-rows:1fr}.care-accordion article.is-open>div p{padding:0 28px 18px 2px}.care-accordion blockquote{margin:45px 0 0 14%;padding:20px 24px;background:#ffffff47;font-size:13px;line-height:1.8;transform:rotate(-1.2deg)}.final-invitation{position:relative;min-height:720px;overflow:hidden;color:#f5eee2;background:var(--moss)}.final-invitation:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#183128f5,#183128b8 43%,#18312814 75%)}.final-invitation img{position:absolute;top:0;right:0;bottom:0;left:38%;width:62%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(.95)}.final-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:720px;width:43%;padding-left:7vw}.final-copy h2{margin:16px 0 22px;font-size:clamp(48px,5vw,78px);line-height:1.35;font-weight:300;letter-spacing:.08em}.final-copy>p:not(.eyebrow){font-family:var(--roman);line-height:1.5}.final-copy button{display:inline-flex;align-items:center;gap:16px;margin-top:24px;padding:16px 24px;border:1px solid #f1e6d7;color:var(--moss);background:#f1e6d7;letter-spacing:.12em;cursor:pointer;transition:transform .3s ease,background .3s ease}.final-copy button:hover{transform:translate(5px);background:#fff}footer{display:grid;grid-template-columns:1fr 1.2fr 1.5fr auto;align-items:center;gap:40px;padding:34px 4vw;background:var(--paper);border-top:1px solid var(--line)}footer p{margin:0;font-size:11px;color:var(--muted);letter-spacing:.08em}footer nav{display:flex;justify-content:center;gap:32px;font-size:11px;letter-spacing:.12em}footer small{font-family:var(--roman);font-size:8px;letter-spacing:.16em}.dialog-backdrop{position:fixed;z-index:40;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:22px;background:#20251f8f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}}.upload-dialog{position:relative;width:min(650px,100%);max-height:92vh;overflow-y:auto;padding:clamp(34px,5vw,65px);background:var(--paper);box-shadow:0 30px 90px #141c1647}.upload-dialog:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid var(--line);pointer-events:none}.dialog-close{position:absolute;z-index:2;top:22px;right:22px;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.upload-dialog h2{margin:14px 0;font-size:clamp(36px,5vw,52px);line-height:1.35;font-weight:300;letter-spacing:.06em}.dialog-intro{max-width:480px;margin:0 0 24px;color:var(--muted);font-size:13px;line-height:1.8}.drop-zone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:240px;overflow:hidden;border:1px dashed rgba(70,59,50,.42);background:#ffffff47;cursor:pointer}.drop-zone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.drop-zone img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:brightness(.72)}.drop-zone.has-preview span,.drop-zone.has-preview small{position:relative;z-index:2;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}.drop-zone span{font-size:14px;letter-spacing:.12em}.drop-zone small{font-size:10px;color:var(--muted)}.primary-action{width:100%;margin-top:16px}.primary-action:disabled{opacity:.45;cursor:not-allowed}@media(max-width:920px){.site-header nav{position:absolute;top:75px;right:22px;display:none;flex-direction:column;align-items:flex-end;gap:16px;padding:24px;background:#f3eee5f2;box-shadow:0 15px 40px #3228201f}.site-header nav.is-open{display:flex}.mobile-menu{display:block}.hero-stamp{display:none}.hero h1{font-size:clamp(48px,10vw,78px)}.stage-heading{grid-template-columns:1fr 1.5fr}.stage-heading>p{grid-column:2}.translation-flow{grid-template-columns:1fr 1fr}.palette-step{margin-top:0}.bloom-step{grid-column:2}.archive-grid{margin-top:50px;grid-template-columns:repeat(2,1fr);grid-auto-rows:auto}.archive-card[class*=card-]{grid-column:auto;grid-row:auto}.archive-card.card-3{transform:translateY(60px)}.archive-card.card-5{grid-column:2}.archive-image{aspect-ratio:.88;height:auto}.care{grid-template-columns:1fr 1.5fr}.care-accordion{grid-column:2}.final-copy{width:60%}footer{grid-template-columns:1fr 1fr}}@media(max-width:640px){.site-header{padding:22px}.hero{min-height:780px}.hero-copy{margin-top:120px;width:calc(100% - 44px)}.hero-copy .eyebrow{font-size:8px}.hero h1{font-size:49px;letter-spacing:.04em}.hero-en{font-size:14px}.hero-side-note{display:none}.paper-section{padding:82px 22px}.stage-heading{display:block;margin-bottom:50px}.stage-heading>span{display:block;margin-bottom:16px}.stage-heading>p{margin-top:22px}.translation-flow{display:block}.translation-step{margin:0 0 66px}.palette-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border:0}.palette-list>div{display:block;min-height:0;border:0}.palette-list i{display:block;height:42px;margin-bottom:6px}.bloom-step figure{aspect-ratio:.9}.thread-line{display:none}.section-intro{width:100%}.archive-grid{display:block;margin-top:55px}.archive-card{width:88%;margin-bottom:46px}.archive-card:nth-child(2n){margin-left:auto}.archive-card.card-3{transform:none}.archive-image{aspect-ratio:.9}.margin-poem{display:none}.section-line{display:block;margin-bottom:35px}.season-word{top:110px}.flower-rail{padding-left:22px}.flower-rail article{flex-basis:210px}.flower-rail img{height:280px}.flower-rail .featured-flower img{height:350px}.care{display:block}.care-copy{margin-bottom:45px}.care-photo{min-height:520px;margin-bottom:45px}.note{max-width:125px}.final-invitation{min-height:680px}.final-invitation img{top:0;right:0;bottom:0;left:0;width:100%;opacity:.62}.final-invitation:after{background:#18312894}.final-copy{width:100%;min-height:680px;padding:60px 24px}.final-copy h2{font-size:46px}footer{display:flex;flex-direction:column;align-items:flex-start;gap:22px}footer nav{flex-wrap:wrap;justify-content:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
