:root{font-family:PingFang SC,Microsoft YaHei,sans-serif;color:#50463d;background:#faf7f2;font-synthesis:none;font-weight:400;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,video:focus-visible{outline:3px solid #b76e54;outline-offset:5px}button{border:0}img{max-width:100%;display:block}section[id]{scroll-margin-top:90px}.site-header{height:96px;max-width:1320px;padding:0 56px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9e2d8}.brand{display:flex;gap:12px;align-items:center;font-family:serif;font-size:23px;font-weight:600;letter-spacing:3px}.brand-flower{font-size:43px;color:#b77660;font-weight:400}.brand small{display:block;font-family:sans-serif;font-size:8px;letter-spacing:2px;margin-top:7px;color:#9b8b7e}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav a:hover{color:#b77660}.nav-note{color:#9a8c7e;font-size:11px;margin-left:25px}.nav-note span{font-size:22px;margin-left:8px;color:#b77660}.hero{max-width:1280px;margin:auto;min-height:660px;display:grid;grid-template-columns:1fr 1fr;padding:65px 72px;align-items:center;gap:30px}.eyebrow{letter-spacing:2px;font-size:10px;font-weight:500;color:#a17e66;display:flex;align-items:center;gap:8px}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:#bb8a6e}h1{font-family:"Noto Serif SC",Songti SC,SimSun,serif;font-size:58px;line-height:1.35;letter-spacing:5px;font-weight:500;margin:24px 0}h1 em{font-style:normal;color:#b77561}h1 em span{font-family:Georgia,serif;font-size:75px;line-height:1}.hero-description{font-size:13px;line-height:2.1;letter-spacing:1px;color:#9b8b7e}.primary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:#ad7059;color:#fff;border-radius:4px;padding:17px 24px;font-size:12px;margin-top:24px;transition:background .2s,transform .2s}.primary-button:hover{background:#945d48;transform:translateY(-2px)}.primary-button span{font-size:19px}.hero-stats{display:flex;gap:15px;align-items:center;margin-top:35px;font-size:10px;color:#9a8c7e;flex-wrap:wrap}.hero-stats strong{font-family:Georgia,serif;font-size:20px;color:#756353;font-weight:400;margin-right:4px}.hero-stats i{width:1px;height:15px;background:#d7cfc5}.handwritten{font-family:serif;color:#b48b73;font-size:11px}.hero-art{height:500px;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#ede6d9 0,transparent 68%)}.photo-print{background:#fffdf8;box-shadow:0 12px 30px #614b3320;padding:13px}.main-print{width:390px;transform:rotate(-5deg);position:relative;margin-top:-28px}.main-print img{aspect-ratio:1.16;object-fit:cover}.print-caption{display:flex;justify-content:space-between;align-items:center;padding:21px 3px 10px;font-family:Georgia,serif;font-style:italic;font-size:17px;color:#9b8167}.print-caption span+span{font:9px sans-serif;letter-spacing:2px}.tape{position:absolute;width:125px;height:35px;background:#dfcaa5a8;top:-15px;left:calc(50% - 62px);transform:rotate(3deg);clip-path:polygon(3% 0,98% 0,95% 18%,100% 34%,96% 50%,99% 76%,96% 100%,0 100%,3% 78%,0 58%,4% 34%,0 15%)}.small-print{position:absolute;width:180px;right:-10px;bottom:5px;transform:rotate(9deg);padding:9px}.small-print img{aspect-ratio:1.12;object-fit:cover}.small-print>span{display:block;font-size:10px;text-align:center;margin:13px 0 5px;color:#a48772;letter-spacing:1px}.round-stamp{position:absolute;left:-8px;bottom:3px;width:103px;height:103px;border-radius:50%;border:1px dashed #ad8e6e;outline:5px solid #f2eadb;background:#f2eadb;color:#a08161;font-size:9px;line-height:1.8;text-align:center;display:flex;flex-direction:column;justify-content:center;transform:rotate(-12deg)}.round-stamp strong{font:22px Georgia,serif;letter-spacing:2px}.doodle-star{position:absolute;color:#b89867;z-index:1}.star-one{left:-15px;top:35px;font-size:58px}.star-two{right:-15px;top:100px;font-size:34px}.orbit-text{position:absolute;top:0;right:25px;font-family:Georgia,serif;font-style:italic;font-size:13px;transform:rotate(10deg);color:#b4987a}.memory-strip{border-top:1px solid #e9e2d8;border-bottom:1px solid #e9e2d8;display:flex;justify-content:center;gap:50px;align-items:center;padding:21px 20px;background:#f3eee5;font-size:11px;letter-spacing:2px;color:#998774}.memory-strip b{font-size:17px;font-weight:400;color:#baa183}.album-section{max-width:1280px;padding:85px 56px 35px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading h2,.film-copy h2{font-family:Songti SC,SimSun,serif;font-size:34px;font-weight:400;letter-spacing:3px;margin:14px 0}.section-heading h2 span{color:#b57b65}.section-heading h2 sup{font-family:sans-serif;margin-left:10px;font-size:23px;color:#b8946b}.section-heading>div>p:last-child,.film-copy>p:not(.eyebrow){font-size:12px;color:#9f9081;letter-spacing:1px;line-height:2}.album-badge{text-align:center;font:10px Georgia,serif;letter-spacing:2px;border-left:1px solid #ddd2c3;padding-left:28px;color:#a08465}.album-badge strong{display:block;font-size:44px;font-weight:400;line-height:1.3}.album-badge small{font:9px sans-serif;letter-spacing:2px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;margin:30px 0 26px;gap:15px}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button{padding:10px 17px;background:transparent;border-radius:5px;color:#9a8a7a;font-size:11px;transition:background .2s}.tabs button.active{background:#eae0d2;color:#74593f}.tabs button:hover{background:#eee6dc}.tabs button span{font-size:9px;margin-left:7px;opacity:.65}.photo-count{font-size:10px;color:#a79888;white-space:nowrap}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 22px}.photo-card{background:#fffdf8;padding:9px 9px 0;box-shadow:0 3px 15px #5b473208;text-align:left;transition:transform .25s,box-shadow .25s;border:1px solid #ede7de;border-radius:3px}.photo-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #5b47321a}.photo-frame{position:relative;overflow:hidden;border-radius:2px;background:#eee7dc}.photo-frame img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;transition:transform .5s}.photo-card:hover img{transform:scale(1.03)}.photo-zoom{position:absolute;right:12px;bottom:12px;border-radius:50%;background:#fffef5df;width:29px;height:29px;display:grid;place-items:center;opacity:0;transition:opacity .2s}.photo-card:hover .photo-zoom{opacity:1}.photo-caption{display:flex;justify-content:space-between;align-items:center;padding:14px 4px;font-size:10px;color:#a08c78;letter-spacing:1px}.photo-caption small{font:10px Georgia,serif;color:#b4a694}.album-end{display:flex;align-items:center;justify-content:center;gap:20px;padding:38px 0 15px}.album-end>span{height:1px;width:65px;background:#e1d7c9}.album-end p{font-size:11px;color:#b3a08d;letter-spacing:2px}.album-end b{font-size:16px;font-weight:400;margin-left:5px}.film-section{max-width:1168px;margin:35px auto 0;background:#eee8de;border-radius:8px;padding:45px;display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center}.film-copy h2{font-size:36px;line-height:1.65}.film-copy h2 span{color:#b57b65}.film-label{display:flex;align-items:center;gap:10px;margin-top:25px;font-size:10px;color:#8a7561}.film-label>span{background:#d8c8b4;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:9px}.film-label small{font-family:Georgia,serif;color:#ac9881}.video-wrap{background:#ded6c9;border:7px solid #fffcf5;box-shadow:0 10px 25px #66503c14;transform:rotate(1.5deg);border-radius:4px;overflow:hidden;line-height:0}.video-wrap video{width:100%;aspect-ratio:16/9;display:block}.closing{text-align:center;padding:72px 20px 65px}.closing>span{color:#bc9b7b;font-size:28px}.closing p{font-family:serif;font-size:18px;letter-spacing:3px;line-height:2;color:#8c7b68;margin:17px 0 22px}.closing small{font-size:8px;letter-spacing:3px;color:#b3a28f}footer{max-width:1200px;margin:auto;padding:23px 16px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e7ded2;font-size:10px;color:#aa9884}.footer-brand{font-family:serif;font-size:16px;letter-spacing:2px;color:#8c7760}.footer-brand span{color:#b8886a}footer p{font-size:10px;letter-spacing:1px}.state-message{text-align:center;padding:80px 20px;color:#9a826a}.state-message button{padding:10px;border-radius:5px;margin-left:10px;background:#eae0d2}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1b18f7;z-index:100;display:flex;align-items:center;justify-content:center;padding:85px 75px 70px;outline:none}.lightbox-bar{position:absolute;top:0;left:0;right:0;padding:18px 25px;display:flex;align-items:center;justify-content:space-between;color:#f6efe4;font-size:13px}.lightbox-bar small{font-size:11px;color:#b6aaa0;margin-left:16px}.lightbox-bar>div{display:flex;align-items:center;gap:15px}.lightbox button,.lightbox a{color:#eee2d1;background:transparent;font-size:12px;padding:8px}.lightbox .close{font-size:32px;line-height:1}.lightbox-image{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain;-webkit-user-select:none;user-select:none;touch-action:pan-y}.lightbox .previous,.lightbox .next{position:absolute;top:50%;font-size:50px;width:60px;border-radius:5px;transform:translateY(-50%);background:#ffffff08}.previous{left:8px}.next{right:8px}.lightbox-hint{position:absolute;bottom:20px;font-size:11px;letter-spacing:1px;color:#c2b4a4;text-align:center}.lightbox-hint span{margin-left:20px;font-size:10px;color:#8f8477}@media(min-width:1500px){.hero{min-height:720px}.hero-art{height:530px}.main-print{width:420px}.small-print{width:195px}}@media(max-width:1000px){.site-header{padding:0 30px;height:80px}.nav-note{display:none}.hero{padding:50px 40px;gap:20px;min-height:600px}h1{font-size:46px}.main-print{width:320px}.hero-art{height:430px}.small-print{width:145px;right:-15px}.round-stamp{width:85px;height:85px;left:-12px;bottom:5px}.round-stamp strong{font-size:18px}.memory-strip{gap:25px;font-size:10px}.album-section{padding:65px 30px 25px}.film-section{margin:30px 30px 0;padding:30px;gap:25px}.film-copy h2{font-size:30px}.film-label{flex-wrap:wrap}.hero-stats .handwritten{display:none}}@media(max-width:650px){.site-header{height:76px;padding:0 22px}.brand{font-size:19px;gap:7px;letter-spacing:2px}.brand-flower{font-size:34px}.brand small{font-size:6px;letter-spacing:1.6px}nav{gap:18px;font-size:10px}.hero{display:flex;flex-direction:column;padding:36px 26px 34px;gap:25px;align-items:stretch}.hero-copy{position:relative}.eyebrow{font-size:8px;letter-spacing:1.7px}h1{font-size:43px;letter-spacing:3px;line-height:1.3;margin:20px 0 16px}h1 br:nth-of-type(2){display:initial}h1 em span{font-size:57px}.hero-description{font-size:11px;line-height:2}.primary-button{margin-top:14px;padding:13px 18px;font-size:11px;gap:30px}.hero-stats{margin-top:22px;font-size:9px}.hero-stats strong{font-size:18px}.hero-art{height:365px;width:100%;max-width:420px;margin:10px auto 0}.main-print{width:83%;max-width:325px;margin-top:-15px;margin-left:-20px;padding:10px}.main-print img{aspect-ratio:1.25}.small-print{width:128px;right:-2px;bottom:-3px}.small-print>span{font-size:8px;margin:10px 0 3px}.print-caption{font-size:15px;padding:17px 3px 8px}.print-caption span+span{font-size:7px}.round-stamp{width:75px;height:75px;font-size:7px;left:2px;bottom:0}.round-stamp strong{font-size:16px}.star-one{left:-8px;top:10px;font-size:40px}.star-two{right:-8px;top:75px;font-size:28px}.orbit-text{font-size:10px;right:15px;top:-8px}.memory-strip{gap:13px;padding:17px 14px;letter-spacing:1px;font-size:9px}.memory-strip span:last-child,.memory-strip b:last-of-type{display:none}.album-section{padding:45px 18px 15px}.section-heading h2{font-size:26px;letter-spacing:1px}.section-heading h2 sup{font-size:19px}.section-heading>div>p:last-child{font-size:10px;letter-spacing:0}.album-badge{padding-left:15px;font-size:8px}.album-badge strong{font-size:35px}.album-badge small{font-size:7px}.gallery-toolbar{margin:23px 0 19px;display:block}.tabs{gap:3px}.tabs button{padding:10px 12px;font-size:10px}.photo-count{display:block;margin:14px 0 0 3px;font-size:9px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.photo-card{padding:6px 6px 0}.photo-frame img{aspect-ratio:1.15}.photo-caption{padding:11px 2px;font-size:9px;letter-spacing:.5px}.photo-caption small{font-size:9px}.photo-zoom{display:none}.album-end{gap:12px;padding:28px 0 5px}.album-end>span{width:30px}.album-end p{font-size:9px;letter-spacing:1px}.film-section{display:flex;flex-direction:column;align-items:stretch;margin:20px 18px 0;padding:26px 22px;gap:25px}.film-copy h2{font-size:29px;line-height:1.5;margin:13px 0}.film-copy h2 br{display:none}.film-copy>p:not(.eyebrow){font-size:11px}.film-label{margin-top:18px}.video-wrap{border-width:5px;margin-bottom:4px}.closing{padding:46px 20px}.closing p{font-size:15px}.closing small{font-size:7px}footer{margin:0 18px;padding:20px 0;flex-wrap:wrap;gap:12px}footer p{font-size:8px}.footer-brand{font-size:13px}footer>a:last-child{font-size:9px}.lightbox{padding:100px 14px 110px}.lightbox-bar{padding:13px 12px;font-size:11px;align-items:flex-start}.lightbox-bar small{display:block;margin:7px 0 0;font-size:9px}.lightbox-bar>div{gap:4px}.lightbox button,.lightbox a{font-size:10px;padding:8px}.lightbox .close{font-size:27px}.lightbox .previous,.lightbox .next{top:auto;bottom:35px;transform:none;font-size:32px;width:46px;height:46px;background:#ffffff10}.previous{left:25px}.next{right:25px}.lightbox-hint{bottom:38px;max-width:55%;font-size:9px}.lightbox-hint span{display:block;margin:6px 0 0;font-size:8px}.hero-stats .handwritten{display:inline;font-size:9px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}.access-page{min-height:100svh;display:grid;place-items:center;padding:35px 22px;background:radial-gradient(ellipse at 20% 20%,#f0e5d7,transparent 60%),#faf7f2}.access-card{width:min(100%,440px);padding:35px 32px;background:#fffdf8;border:1px solid #e9e0d4;border-radius:12px;box-shadow:0 20px 70px #785f3910}.access-flower{font-size:38px;color:#b77660}.access-card h1{font-size:36px;letter-spacing:3px;margin:20px 0}.access-intro{color:#9a8774;font-size:12px;margin-bottom:32px}.access-card label,.share-result label{display:block;font-size:14px;margin-bottom:12px}.access-card input,.share-result input{width:100%;border:1px solid #d9cbbb;background:#faf7f2;border-radius:5px;padding:14px 12px;font:inherit;font-size:14px;color:#50463d}.access-help,.access-footnote{font-size:11px;color:#a18e79;line-height:1.8}.access-footnote{margin:28px 0 0}.access-message{font-size:12px!important;color:#a25641!important;line-height:1.8}.access-card .primary-button{width:100%;justify-content:center;margin-top:12px;border:0}.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.access-tools{display:flex;justify-content:flex-end;align-items:center;gap:16px;max-width:1200px;margin:0 auto;padding:12px 20px 0;font-size:11px;color:#a18a74}.access-tools button{background:transparent;font-size:11px;color:#8a604a;padding:7px}.access-tools button:first-of-type{border:1px solid #e2d3c2;border-radius:4px}.share-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#3b302f80;z-index:110;display:grid;place-items:center;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.share-dialog{width:min(100%,470px);max-height:90svh;overflow:auto;background:#fffdf8;padding:32px;border-radius:12px;position:relative;box-shadow:0 20px 70px #33221e30}.share-close{position:absolute;top:12px;right:15px;background:transparent;font-size:26px}.share-dialog h2{font-family:serif;font-weight:400;font-size:24px}.share-dialog>p{font-size:12px;color:#9f8770;line-height:1.9}.share-dialog .primary-button{margin-top:12px}.share-result{margin-top:23px}.share-result label,.share-result input{font-size:11px}.share-result>div{display:flex;gap:12px;margin-top:12px}.share-result button,.share-list button{background:#eee4d7;border-radius:4px;padding:9px 13px;font-size:11px}.share-list{margin-top:25px;border-top:1px solid #eee2d4;padding-top:12px}.share-list h3{font-size:12px;font-weight:400;color:#99826a}.share-list>div{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f0e9df;font-size:11px}.share-list small{display:block;font-size:9px;margin-top:5px;color:#ac9782}@media(max-width:650px){.access-card{padding:28px 24px}.access-card h1{font-size:32px}.share-dialog{padding:26px 22px}.share-dialog h2{font-size:21px}.access-tools{padding:8px 17px 0;font-size:9px;gap:10px}}
