@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap";:root{--ink: #27233c;--ink-soft: #514b66;--paper: #f8f4eb;--paper-deep: #ece5d6;--cream: #fbf9f3;--coral: #e8705b;--coral-dark: #be4d42;--mustard: #e5a83b;--mint: #5a9489;--blue: #738ca6;--line: rgba(39, 35, 60, .16);--shadow: 0 20px 50px rgba(39, 35, 60, .09);--radius: 18px;font-family:Zen Kaku Gothic New,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.mobile-only{display:none}.grain{position:fixed;z-index:10;inset:0;pointer-events:none;opacity:.055;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E")}.site-shell{overflow:hidden}.site-header,main,.site-footer{width:min(1180px,calc(100% - 64px));margin:0 auto}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand,.footer-brand{display:inline-flex;align-items:center;gap:11px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;color:var(--paper);background:var(--ink);border-radius:50% 50% 46% 48%;font-size:20px;font-weight:900;line-height:1;transform:rotate(-8deg)}.brand-copy{display:flex;flex-direction:column;gap:1px;line-height:1}.brand-copy strong{font-size:19px;letter-spacing:.08em}.brand-copy small{color:var(--ink-soft);font-family:DM Mono,monospace;font-size:8px;letter-spacing:.08em}.desktop-nav{display:flex;align-items:center;gap:33px;margin-left:auto;margin-right:24px}.desktop-nav a{color:var(--ink-soft);font-size:13px;font-weight:700;letter-spacing:.04em;transition:color .2s ease}.desktop-nav a:hover,.footer-links a:hover{color:var(--coral-dark)}.header-cta,.primary-button,.outline-button,.cream-button{border:0;border-radius:999px;font-weight:700;letter-spacing:.04em;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.header-cta{padding:13px 19px;color:var(--paper);background:var(--coral);font-size:12px;white-space:nowrap;box-shadow:0 8px 18px #be4d422e}.header-cta span,.primary-button span,.cream-button span{margin-left:11px;font-size:16px}.header-cta:hover,.primary-button:hover,.cream-button:hover{transform:translateY(-2px);box-shadow:0 11px 25px #be4d4238}.hero{min-height:625px;display:grid;grid-template-columns:.92fr 1.08fr;gap:65px;align-items:center;padding:63px 0 77px}.hero-copy{position:relative;z-index:1;padding-left:16px}.eyebrow,.section-kicker{display:flex;align-items:center;gap:9px;margin:0 0 22px;color:var(--coral-dark);font-family:DM Mono,monospace;font-size:10px;font-weight:500;letter-spacing:.06em}.eyebrow-dot{width:7px;height:7px;background:var(--coral);border-radius:50%;box-shadow:0 0 0 5px #e8705b21}h1,h2,p{margin-top:0}h1{margin-bottom:22px;font-size:clamp(44px,5vw,71px);font-weight:900;letter-spacing:-.075em;line-height:1.14}h1 em,h2 em{color:var(--coral);font-style:normal}.hero-lead{margin-bottom:34px;color:var(--ink-soft);font-size:15px;font-weight:500;line-height:1.9;letter-spacing:.04em}.affiliate-section{margin-top:34px;padding:54px 48px;border:1px solid rgba(39,35,60,.12);border-radius:var(--radius);background:#efe8d9}.affiliate-heading-row{display:flex;align-items:end;justify-content:space-between;gap:32px}.affiliate-heading-row h2{margin-bottom:0;font-size:clamp(30px,4vw,48px);letter-spacing:-.055em;line-height:1.25}.affiliate-disclosure{max-width:330px;margin-bottom:4px;color:var(--ink-soft);font-size:10px;line-height:1.75}.affiliate-disclosure strong,.affiliate-pr{color:var(--coral-dark);font-family:DM Mono,monospace;letter-spacing:.08em}.affiliate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:31px}.affiliate-card{position:relative;min-width:0;padding:24px 22px 20px;border:1px solid rgba(39,35,60,.1);border-radius:12px;background:#ffffff9e}.affiliate-pr{position:absolute;top:14px;right:15px;font-size:8px}.affiliate-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:18px;color:var(--coral-dark);border-radius:50%;background:#e8705b1f;font-size:19px}.affiliate-card h3{margin:0 0 9px;font-size:17px}.affiliate-card p{min-height:4.8em;margin-bottom:18px;color:var(--ink-soft);font-size:11px;line-height:1.75}.affiliate-card a{display:inline-flex;align-items:center;gap:8px;color:var(--coral-dark);border-bottom:1px solid currentColor;font-size:11px;font-weight:700}.affiliate-note{margin:17px 0 0;color:var(--ink-soft);font-size:9px;line-height:1.7}.amazon-disclosure{width:100%;margin:12px 0 0;color:var(--ink-soft);font-size:9px;line-height:1.6}@media(max-width:760px){.affiliate-section{padding:35px 20px}.affiliate-heading-row{display:block}.affiliate-disclosure{margin-top:14px}.affiliate-grid{grid-template-columns:1fr}.affiliate-card p{min-height:0}}.birth-form{width:min(100%,430px);padding:20px 21px 17px;border:1px solid rgba(39,35,60,.12);border-radius:13px;background:#ffffff6e;box-shadow:0 12px 32px #27233c0b}.birth-form label,.memory-dialog label{display:block;margin-bottom:9px;font-size:11px;font-weight:700;letter-spacing:.07em}.input-row{display:flex;align-items:stretch;gap:8px}.year-input-wrap{position:relative;display:flex;align-items:center;min-width:0;flex:1;border:1px solid var(--line);border-radius:8px;background:var(--cream)}.year-input-wrap input{width:100%;min-width:0;padding:12px 36px 12px 14px;color:var(--ink);border:0;outline:0;background:transparent;font-family:DM Mono,monospace;font-size:17px;font-weight:500}.year-input-wrap span{position:absolute;right:12px;color:var(--ink-soft);font-size:12px}.primary-button{padding:13px 17px;color:var(--paper);background:var(--ink);font-size:12px;white-space:nowrap}.primary-button:hover{background:var(--coral-dark);box-shadow:0 11px 25px #27233c33}.field-help{margin:9px 0 11px;color:var(--ink-soft);font-size:10px}.quick-years{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:var(--ink-soft);font-size:10px}.quick-years button{padding:0;color:var(--ink-soft);border:0;border-bottom:1px solid var(--ink-soft);background:transparent;font-family:DM Mono,monospace;font-size:10px}.quick-years button:hover{color:var(--coral-dark);border-color:var(--coral-dark)}.hero-proof{display:flex;align-items:center;gap:13px;margin-top:29px}.avatar-stack{display:flex;padding-left:8px}.avatar-stack span{display:grid;place-items:center;width:24px;height:24px;margin-left:-8px;color:var(--ink);border:2px solid var(--paper);border-radius:50%;background:var(--mustard);font-size:9px;font-weight:900}.avatar-stack span:nth-child(2){background:#d88378}.avatar-stack span:nth-child(3){background:#91b3a8}.avatar-stack span:nth-child(4){color:var(--ink-soft);background:var(--paper-deep);font-size:10px}.hero-proof p{margin:0;color:var(--ink-soft);font-size:10px;line-height:1.55;letter-spacing:.03em}.hero-proof strong{color:var(--ink);font-size:12px}.hero-art{position:relative;min-height:480px;overflow:hidden;border-radius:13px;background:#c38d57;box-shadow:var(--shadow);transform:rotate(1.1deg)}.hero-art:after{position:absolute;inset:0;z-index:1;content:"";pointer-events:none;background:linear-gradient(135deg,rgba(39,35,60,.11),transparent 50%,rgba(232,112,91,.12));mix-blend-mode:multiply}.hero-art img{width:100%;height:100%;min-height:480px;display:block;object-fit:cover}.art-stamp{position:absolute;top:27px;right:24px;z-index:2;display:flex;align-items:center;flex-direction:column;justify-content:center;width:83px;height:83px;color:var(--paper);border:1px solid rgba(248,244,235,.8);border-radius:50%;transform:rotate(11deg)}.art-stamp span{font-size:10px;letter-spacing:.12em}.art-stamp strong{font-size:17px;letter-spacing:.1em;line-height:1.2}.art-stamp small{font-family:DM Mono,monospace;font-size:7px;letter-spacing:.06em}.art-caption{position:absolute;bottom:26px;left:24px;z-index:2;display:flex;align-items:center;gap:11px;color:var(--paper);font-size:11px;letter-spacing:.1em}.caption-line{width:28px;height:1px;background:var(--paper)}.timeline-section,.memory-section{padding:103px 0 111px;border-top:1px solid var(--line)}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.section-kicker{margin-bottom:19px;color:var(--ink-soft);font-size:9px;letter-spacing:.1em}.section-kicker span{color:var(--coral)}h2{margin-bottom:0;font-size:clamp(34px,4vw,50px);font-weight:900;letter-spacing:-.07em;line-height:1.22}.section-description{margin:0 0 7px;color:var(--ink-soft);font-size:12px;line-height:1.9;letter-spacing:.04em}.timeline-meta{display:flex;align-items:center;justify-content:space-between;margin:43px 0 19px;padding-top:15px;border-top:1px dashed rgba(39,35,60,.2)}.timeline-meta p{margin:0;color:var(--ink-soft);font-size:11px;letter-spacing:.05em}.meta-icon{color:var(--coral);font-size:16px}.text-button{padding:3px 0;color:var(--coral-dark);border:0;border-bottom:1px solid currentColor;background:transparent;font-size:11px;font-weight:700;letter-spacing:.04em}.text-button span{margin-left:10px;font-size:15px}.text-button:hover{color:var(--ink)}.timeline-list{position:relative;display:grid;gap:0}.timeline-list:before{position:absolute;top:24px;bottom:22px;left:78px;width:1px;content:"";background:#27233c36}.timeline-item{position:relative;display:grid;grid-template-columns:156px 1fr;gap:29px;min-height:143px}.timeline-date{position:relative;z-index:1;padding-top:21px;color:var(--ink-soft);font-family:DM Mono,monospace;font-size:11px;text-align:right}.timeline-date strong{display:block;margin-top:3px;color:var(--ink);font-size:20px;letter-spacing:-.04em}.timeline-dot{position:absolute;top:30px;right:-35px;width:12px;height:12px;border:3px solid var(--paper);border-radius:50%;background:var(--coral);box-shadow:0 0 0 1px var(--coral)}.timeline-card{align-self:start;display:grid;grid-template-columns:44px 1fr auto;gap:17px;align-items:center;margin-bottom:17px;padding:19px 22px;border:1px solid rgba(39,35,60,.1);border-radius:12px;background:#ffffff80;transition:transform .2s ease,box-shadow .2s ease}.timeline-card:hover{transform:translate(4px);box-shadow:0 10px 23px #27233c14}.timeline-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:var(--paper-deep);font-size:20px}.timeline-item:nth-child(2) .timeline-icon{background:#f8dfd7}.timeline-item:nth-child(3) .timeline-icon{background:#e4ebe1}.timeline-item:nth-child(4) .timeline-icon{background:#e8e1ef}.timeline-item:nth-child(5) .timeline-icon{background:#f2e4c2}.timeline-item:nth-child(6) .timeline-icon{background:#dce7ea}.timeline-card h3{margin:0 0 5px;font-size:15px;letter-spacing:-.02em}.timeline-card p{margin:0;color:var(--ink-soft);font-size:11px;line-height:1.7}.timeline-age{align-self:start;padding:5px 8px;color:var(--ink-soft);border:1px solid rgba(39,35,60,.13);border-radius:99px;font-family:DM Mono,monospace;font-size:9px;white-space:nowrap}.memory-section{background:var(--ink);color:var(--paper);margin-left:calc((1180px - 100vw)/2);margin-right:calc((1180px - 100vw)/2);padding-left:max(32px,calc((100vw - 1180px)/2));padding-right:max(32px,calc((100vw - 1180px)/2))}.memory-section .section-kicker,.memory-section .section-description{color:#f8f4eb9e}.memory-section .section-kicker span{color:var(--mustard)}.memory-heading-side{display:flex;align-items:flex-end;flex-direction:column;gap:21px}.memory-heading-side p{margin:0;color:#f8f4eba6;font-size:12px;line-height:1.8;text-align:right}.outline-button{padding:11px 16px;color:var(--paper);border:1px solid rgba(248,244,235,.54);background:transparent;font-size:11px}.outline-button:hover{border-color:var(--paper);background:#f8f4eb1a}.outline-button span{margin-left:10px;color:var(--mustard);font-size:17px}.filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:47px 0 22px}.filter-button{padding:9px 14px;color:#f8f4eba6;border:1px solid rgba(248,244,235,.2);border-radius:99px;background:transparent;font-size:10px;transition:all .2s ease}.filter-button:hover,.filter-button.is-active{color:var(--ink);border-color:var(--paper);background:var(--paper)}.memory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.memory-card{display:flex;flex-direction:column;min-height:263px;padding:21px;color:var(--ink);border-radius:10px;background:var(--cream)}.memory-card:nth-child(3n+2){background:#f5e6c7}.memory-card:nth-child(3n+3){background:#dceae4}.memory-card.is-hidden{display:none}.memory-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.memory-card-category{color:var(--coral-dark);font-family:DM Mono,monospace;font-size:9px;letter-spacing:.06em}.memory-card-year{color:var(--ink-soft);font-family:DM Mono,monospace;font-size:9px}.memory-card h3{margin:31px 0 12px;font-size:17px;letter-spacing:-.05em;line-height:1.45}.memory-card p{margin:0;color:var(--ink-soft);font-size:11px;line-height:1.85}.memory-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:22px}.memory-author{color:var(--ink-soft);font-size:9px}.memory-actions{display:flex;align-items:center;gap:7px}.reaction-button,.memory-share{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;color:var(--ink-soft);border:1px solid rgba(39,35,60,.16);border-radius:99px;background:transparent;font-size:10px}.reaction-button:hover,.reaction-button.is-liked{color:var(--coral-dark);border-color:var(--coral);background:#e8705b14}.reaction-button span{font-family:DM Mono,monospace}.memory-share{width:27px;height:27px;justify-content:center;padding:0;border:0;font-size:13px}.memory-share:hover{color:var(--coral-dark)}.memory-more{display:flex;justify-content:center;padding-top:37px}.memory-section .text-button{color:var(--paper);border-color:#f8f4eb80}.memory-section .text-button:hover{color:var(--mustard);border-color:var(--mustard)}.keepsake-section{display:grid;grid-template-columns:1fr .95fr;align-items:center;gap:90px;min-height:510px;padding:114px 0 123px}.keepsake-copy{max-width:460px}.keepsake-copy .section-kicker,.keepsake-copy h2{margin-bottom:23px}.keepsake-copy>p:not(.section-kicker){max-width:390px;margin-bottom:30px;color:var(--ink-soft);font-size:12px;line-height:2}.cream-button{padding:14px 19px;color:var(--ink);background:var(--mustard);font-size:11px}.cream-button:hover{box-shadow:0 11px 25px #e5a83b3d}.keepsake-preview{position:relative;min-height:300px;display:grid;place-items:center}.book-shadow{position:absolute;width:270px;height:240px;border-radius:5px;background:#27233c30;transform:translate(18px,17px) rotate(7deg);filter:blur(7px)}.book-card{position:relative;display:flex;flex-direction:column;width:230px;height:285px;padding:30px 25px;color:var(--paper);background:var(--coral);box-shadow:18px 18px #27233c1c;transform:rotate(-7deg)}.book-card:before{position:absolute;inset:10px;border:1px solid rgba(248,244,235,.5);content:""}.book-label{position:relative;font-family:DM Mono,monospace;font-size:8px;letter-spacing:.1em}.book-card strong{position:relative;margin-top:53px;font-size:29px;font-weight:900;letter-spacing:-.1em;line-height:1.18}.book-year{position:relative;margin-top:24px;font-family:DM Mono,monospace;font-size:9px;letter-spacing:.06em}.book-line{position:relative;width:31px;height:1px;margin-top:16px;background:var(--paper)}.book-note{position:relative;margin-top:auto;font-size:9px;line-height:1.7}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:119px;border-top:1px solid var(--line)}.footer-brand .brand-mark{width:31px;height:31px;font-size:16px}.footer-brand strong{display:block;font-size:15px;letter-spacing:.08em;line-height:1}.footer-brand small{display:block;margin-top:3px;color:var(--ink-soft);font-family:DM Mono,monospace;font-size:7px}.site-footer>p{margin:0;color:var(--ink-soft);font-size:10px}.footer-links{display:flex;gap:21px;color:var(--ink-soft);font-size:10px}.mobile-nav{display:none}.memory-dialog{width:min(440px,calc(100% - 28px));padding:0;color:var(--ink);border:0;border-radius:16px;background:var(--cream);box-shadow:0 25px 80px #14122257}.memory-dialog::backdrop{background:#27233c9e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-card{position:relative;padding:31px}.dialog-close{position:absolute;top:19px;right:20px;width:29px;height:29px;color:var(--ink-soft);border:0;border-radius:50%;background:var(--paper-deep);font-size:22px;line-height:1}.dialog-close:hover{color:var(--coral-dark)}.dialog-card .section-kicker{margin-bottom:12px}.dialog-card h2{font-size:30px}.dialog-intro{margin:14px 0 24px;color:var(--ink-soft);font-size:11px;line-height:1.8}.memory-dialog label{margin-top:16px}.memory-dialog label span{margin-left:4px;color:var(--coral-dark);font-size:9px}.memory-dialog label span:not(:first-child){color:var(--ink-soft)}.memory-dialog select,.memory-dialog textarea,.memory-dialog input[type=text]{width:100%;padding:11px 12px;color:var(--ink);border:1px solid var(--line);border-radius:7px;outline-color:var(--coral);background:#fff;font-size:12px}.memory-dialog textarea{resize:vertical;line-height:1.7}.textarea-meta{display:flex;justify-content:space-between;margin-top:6px;color:var(--ink-soft);font-size:9px}.dialog-submit{width:100%;margin-top:24px}.toast{position:fixed;right:22px;bottom:23px;z-index:30;max-width:calc(100% - 44px);padding:13px 18px;color:var(--paper);border-radius:8px;background:var(--ink);box-shadow:0 12px 35px #27233c40;font-size:12px;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}.toast.is-visible{opacity:1;transform:translateY(0)}@media(max-width:920px){.site-header,main,.site-footer{width:min(100% - 40px,720px)}.desktop-nav{gap:16px;margin-right:0}.desktop-nav a{font-size:11px}.header-cta{display:none}.hero{grid-template-columns:1fr;gap:38px;padding-top:33px}.hero-copy{padding-left:0}.hero-art{min-height:360px;transform:none}.hero-art img{min-height:360px}.hero-copy h1{font-size:clamp(45px,10vw,70px)}.hero-art{max-height:440px}.memory-section{margin-left:calc((720px - 100vw)/2);margin-right:calc((720px - 100vw)/2);padding-left:max(20px,calc((100vw - 720px)/2));padding-right:max(20px,calc((100vw - 720px)/2))}.memory-grid{grid-template-columns:repeat(2,1fr)}.keepsake-section{gap:35px}}@media(max-width:640px){:root{--radius: 13px}.mobile-only{display:block}.site-header,main,.site-footer{width:calc(100% - 40px)}.site-header{height:75px}.brand-mark{width:34px;height:34px;font-size:18px}.brand-copy strong{font-size:17px}.desktop-nav{display:none}.hero{min-height:0;padding:46px 0 68px;gap:32px}.eyebrow{font-size:9px}.hero-copy h1{margin-bottom:19px;font-size:clamp(44px,13vw,62px)}.hero-lead{font-size:13px;line-height:1.85}.birth-form{padding:17px 15px 14px}.input-row{display:grid;grid-template-columns:1fr;gap:9px}.year-input-wrap input{padding-top:11px;padding-bottom:11px}.primary-button{width:100%;padding:13px 15px}.hero-proof{margin-top:23px}.hero-art{min-height:255px;max-height:255px;border-radius:11px}.hero-art img{min-height:255px}.art-stamp{top:16px;right:16px;width:67px;height:67px}.art-stamp strong{font-size:14px}.art-caption{bottom:17px;left:16px;font-size:9px}.timeline-section,.memory-section{padding-top:74px;padding-bottom:80px}.section-intro{display:block}.section-description{margin-top:19px;font-size:11px}.timeline-meta{align-items:flex-start;gap:20px;margin-top:31px}.timeline-meta p{font-size:10px}.timeline-meta .text-button{font-size:10px;white-space:nowrap}.timeline-list:before{left:57px}.timeline-item{grid-template-columns:110px 1fr;gap:17px;min-height:161px}.timeline-date{padding-top:20px;font-size:9px}.timeline-date strong{font-size:16px}.timeline-dot{right:-24px;width:10px;height:10px}.timeline-card{grid-template-columns:1fr;gap:10px;padding:16px}.timeline-icon{display:none}.timeline-card h3{font-size:13px}.timeline-card p{font-size:10px;line-height:1.65}.timeline-age{justify-self:start;padding:4px 7px}.memory-section{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}.memory-heading-side{display:flex;align-items:flex-start;flex-direction:row;justify-content:space-between;gap:12px;margin-top:21px}.memory-heading-side p{font-size:10px;text-align:left}.outline-button{padding:9px 13px;font-size:10px;white-space:nowrap}.filter-row{margin-top:33px}.filter-button{padding:8px 12px;font-size:9px}.memory-grid{grid-template-columns:1fr;gap:11px}.memory-card{min-height:220px;padding:18px}.memory-card h3{margin-top:22px;font-size:16px}.memory-card-footer{padding-top:18px}.memory-more{padding-top:29px}.keepsake-section{display:flex;align-items:stretch;flex-direction:column;gap:53px;padding:78px 0 92px}.keepsake-copy h2{font-size:39px}.keepsake-copy>p:not(.section-kicker){font-size:11px}.keepsake-preview{min-height:253px}.book-card{width:195px;height:242px;padding:25px 22px}.book-card strong{margin-top:42px;font-size:25px}.book-shadow{width:224px;height:205px}.site-footer{min-height:175px;align-items:flex-start;flex-wrap:wrap;padding:25px 0 83px}.site-footer>p{width:100%;order:3}.footer-links{margin-left:auto}.mobile-nav{position:fixed;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:stretch;justify-content:space-around;height:65px;padding:7px 5px max(7px,env(safe-area-inset-bottom));border-top:1px solid rgba(39,35,60,.12);background:#f8f4ebf2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav a,.mobile-nav button{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:2px;min-width:68px;padding:2px 7px;color:var(--ink-soft);border:0;background:transparent;font-size:9px}.mobile-nav a span,.mobile-nav button span{font-size:17px;line-height:1}.mobile-nav a.is-current,.mobile-nav a:hover,.mobile-nav button:hover{color:var(--coral-dark)}.toast{right:14px;bottom:79px;max-width:calc(100% - 28px)}.dialog-card{padding:27px 21px 22px}.dialog-card h2{font-size:26px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ai-entry-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;margin-top:15px;padding:9px 13px;color:var(--ink);border:1px solid rgba(39,35,60,.24);border-radius:99px;background:#e5a83b2e;font-size:11px;font-weight:700;transition:color .2s ease,background .2s ease,transform .2s ease}.ai-entry-button:hover{color:var(--paper);background:var(--coral-dark);transform:translateY(-1px)}.ai-entry-button span{color:var(--coral-dark);font-size:16px}.ai-entry-button:hover span{color:var(--mustard)}.bgm-control{position:fixed;right:20px;bottom:20px;z-index:18;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 8px;color:var(--paper);border:1px solid rgba(248,244,235,.17);border-radius:99px;background:#27233ceb;box-shadow:0 10px 25px #27233c33;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bgm-control button{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:5px 8px;color:var(--paper);border:0;border-radius:99px;background:transparent;font-size:10px;font-weight:700}.bgm-control button:hover,.bgm-control button[aria-pressed=true]{background:#f8f4eb1f}.bgm-note{display:grid;place-items:center;width:23px;height:23px;color:var(--mustard);border-radius:50%;background:#e5a83b29;font-size:15px}.bgm-state{color:#f8f4eb8a;font-family:DM Mono,monospace;font-size:8px}.bgm-volume{display:flex;align-items:center;gap:6px;color:#f8f4eba1;font-size:8px}.bgm-volume input{width:66px;height:4px;accent-color:var(--mustard)}.bgm-hint{display:none}.ai-dialog{width:min(600px,calc(100% - 28px));max-height:min(820px,calc(100dvh - 28px));padding:0;overflow:hidden;color:var(--ink);border:0;border-radius:18px;background:var(--cream);box-shadow:0 25px 80px #14122261}.ai-dialog::backdrop{background:#27233ca8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.ai-shell{max-height:min(820px,calc(100dvh - 28px));overflow-y:auto}.ai-header{display:flex;align-items:flex-start;justify-content:space-between;padding:25px 28px 16px;border-bottom:1px solid var(--line)}.ai-header .dialog-close{position:static;flex:0 0 auto;margin-top:2px}.ai-overline{margin:0 0 8px;color:var(--coral-dark);font-family:DM Mono,monospace;font-size:8px;letter-spacing:.08em}.ai-overline span{color:var(--ink-soft)}.ai-header h2{font-size:30px}.ai-view{padding:26px 28px 28px}.ai-card-context,.ai-chat-context{padding:15px 16px;border-left:3px solid var(--mustard);border-radius:7px;background:#e5a83b21}.ai-card-context .context-year,.ai-chat-context .context-year{display:block;margin-bottom:6px;color:var(--coral-dark);font-family:DM Mono,monospace;font-size:10px}.ai-card-context strong,.ai-chat-context strong{display:block;margin-bottom:5px;font-size:15px}.ai-card-context p,.ai-chat-context p{margin:0;color:var(--ink-soft);font-size:11px;line-height:1.65}.ai-intro-copy{margin-top:27px}.ai-badge{display:inline-flex;margin-bottom:12px;padding:5px 8px;color:var(--paper);border-radius:99px;background:var(--ink);font-size:9px;font-weight:700}.ai-intro-copy h3{margin:0 0 12px;font-size:24px;letter-spacing:-.06em;line-height:1.4}.ai-intro-copy>p:not(.ai-badge){margin-bottom:19px;color:var(--ink-soft);font-size:12px;line-height:1.85}.ai-safety-list{display:grid;gap:8px;margin:0 0 21px;padding:16px 17px 16px 32px;color:var(--ink-soft);border-radius:8px;background:#27233c0b;font-size:11px;line-height:1.6}.ai-safety-list li::marker{color:var(--mint)}.ai-consent{display:flex;align-items:flex-start;gap:9px;margin:0;padding:13px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:11px;font-weight:700;line-height:1.55}.ai-consent input{width:18px;height:18px;flex:0 0 auto;margin:0;accent-color:var(--coral)}.ai-start-actions,.ai-review-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.ai-start-actions .primary-button,.ai-review-actions .primary-button{flex:1}.ai-start-actions .outline-button{color:var(--ink);border-color:var(--line)}.ai-chat-context{margin-bottom:16px}.ai-progress-row{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;color:var(--ink-soft);font-family:DM Mono,monospace;font-size:9px}.ai-messages{display:grid;gap:12px;min-height:180px;max-height:360px;padding:2px 3px 6px;overflow-y:auto}.ai-message{max-width:88%;padding:12px 14px;border-radius:12px;font-size:12px;line-height:1.8;white-space:pre-wrap}.ai-message.ai{justify-self:start;color:var(--ink);border:1px solid var(--line);border-top-left-radius:4px;background:#fff}.ai-message.user{justify-self:end;color:var(--paper);border-top-right-radius:4px;background:var(--ink)}.ai-message .message-label{display:block;margin-bottom:5px;color:var(--coral-dark);font-family:DM Mono,monospace;font-size:8px}.ai-message.user .message-label{color:var(--mustard)}.ai-chip-row{display:flex;flex-wrap:wrap;gap:7px;margin:5px 0 14px}.ai-chip{min-height:38px;padding:7px 11px;color:var(--ink-soft);border:1px solid var(--line);border-radius:99px;background:transparent;font-size:10px}.ai-chip:hover{color:var(--coral-dark);border-color:var(--coral);background:#e8705b14}.ai-message-form{padding-top:13px;border-top:1px dashed var(--line)}.ai-message-form textarea{width:100%;min-height:82px;padding:12px;resize:vertical;color:var(--ink);border:1px solid var(--line);border-radius:8px;outline-color:var(--coral);background:#fff;font-size:12px;line-height:1.7}.ai-input-meta{display:flex;justify-content:space-between;margin-top:5px;color:var(--ink-soft);font-size:9px}.ai-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:11px}.ai-text-button{min-height:40px;padding:5px 0;color:var(--ink-soft);border:0;border-bottom:1px solid transparent;background:transparent;font-size:10px;font-weight:700}.ai-text-button:hover{color:var(--coral-dark);border-color:currentColor}.ai-form-actions .primary-button{min-height:42px}.ai-end-button{display:block;margin:20px auto 0;padding:4px;color:var(--ink-soft);border:0;background:transparent;font-size:9px}.ai-end-button:hover{color:var(--coral-dark)}.ai-review-view h3{margin:11px 0;font-size:24px;letter-spacing:-.05em;line-height:1.4}.ai-review-note{color:var(--ink-soft);font-size:11px;line-height:1.75}.ai-review-block{margin-top:18px;padding:14px;border-radius:9px}.ai-review-block.user-origin{background:#f5e6c7}.ai-review-block.era-origin{background:#e5eee9}.ai-review-label{display:block;margin-bottom:8px;color:var(--coral-dark);font-family:DM Mono,monospace;font-size:9px}.ai-review-block textarea{width:100%;padding:10px;resize:vertical;color:var(--ink);border:1px solid rgba(39,35,60,.16);border-radius:6px;outline-color:var(--coral);background:#ffffffa6;font-size:13px;line-height:1.7}.ai-review-block p{margin:0 0 7px;color:var(--ink-soft);font-size:11px;line-height:1.75}.ai-review-block a{color:var(--coral-dark);font-size:10px;border-bottom:1px solid currentColor}.ai-origin-label{display:block;margin-top:19px;margin-bottom:8px;font-size:11px;font-weight:700}.ai-origin-label span{margin-left:4px;color:var(--coral-dark);font-size:9px}.ai-review-view select{width:100%;padding:11px;color:var(--ink);border:1px solid var(--line);border-radius:7px;outline-color:var(--coral);background:#fff;font-size:12px}.ai-review-actions .ai-text-button{flex:0 0 auto}.ai-review-actions .primary-button:disabled,.ai-start-actions .primary-button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}@media(max-width:640px){.bgm-control{right:12px;bottom:12px;gap:4px;padding:6px}.bgm-label{display:none}.bgm-volume{gap:4px}.bgm-volume input{width:54px}.ai-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:14px}.ai-shell{max-height:calc(100dvh - 16px)}.ai-header{padding:19px 18px 13px}.ai-view{padding:20px 18px 22px}.ai-intro-copy h3,.ai-review-view h3{font-size:21px}.ai-message{max-width:94%}.ai-messages{max-height:310px}.ai-form-actions{gap:10px}.ai-form-actions .primary-button{padding-inline:14px}.ai-safety-list{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.required-mark,.optional-mark{margin-left:5px;color:var(--coral-dark);font-size:9px;font-weight:500}.optional-mark{color:var(--ink-soft)}.prefecture-label{margin-top:15px}.prefecture-select{width:100%;padding:11px 36px 11px 12px;color:var(--ink);border:1px solid var(--line);border-radius:8px;outline-color:var(--coral);background:var(--cream);font-size:12px}.privacy-note{display:flex;align-items:center;gap:6px;margin:12px 0 0;color:var(--ink-soft);font-size:10px;line-height:1.5}.privacy-note span{color:var(--mint);font-size:17px}.timeline-date small{display:block;margin-top:3px;color:var(--ink-soft);font-size:9px;line-height:1.35}.timeline-card{grid-template-columns:44px minmax(0,1fr);align-items:start}.timeline-card-body{min-width:0}.timeline-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.timeline-category{color:var(--coral-dark);font-family:DM Mono,monospace;font-size:9px;letter-spacing:.04em}.timeline-age{padding:6px 8px;color:var(--ink-soft);border:1px solid rgba(39,35,60,.13);border-radius:99px;font-size:9px;line-height:1.3;white-space:nowrap}.timeline-age strong{color:var(--coral-dark);font-size:10px}.timeline-card h3{margin-bottom:8px;font-size:17px}.timeline-card-body>p{margin-bottom:10px;color:var(--ink-soft);font-size:13px;line-height:1.75}.memory-prompt{display:flex;align-items:baseline;gap:8px;padding:9px 11px;color:var(--ink)!important;border-left:2px solid var(--mustard);background:#e5a83b1a;font-size:11px!important}.memory-prompt span{color:var(--coral-dark);font-family:DM Mono,monospace;font-size:8px;white-space:nowrap}.source-line{margin:11px 0 14px;color:var(--ink-soft);font-size:9px;line-height:1.55}.source-line a{color:var(--ink-soft);border-bottom:1px solid rgba(39,35,60,.25)}.source-line a:hover{color:var(--coral-dark);border-color:var(--coral-dark)}.reaction-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px dashed rgba(39,35,60,.16);color:var(--ink-soft);font-size:10px}.reaction-actions{display:flex;align-items:center;gap:6px}.card-reaction,.card-share{min-height:36px;padding:7px 10px;color:var(--ink-soft);border:1px solid rgba(39,35,60,.19);border-radius:99px;background:transparent;font-size:10px}.card-reaction.nostalgia span{margin-left:3px;font-size:14px}.card-reaction:hover,.card-reaction.is-selected{color:var(--coral-dark);border-color:var(--coral);background:#e8705b17}.card-reaction.neutral.is-selected{color:var(--ink);border-color:var(--ink-soft);background:#27233c12}.card-share{width:36px;padding:0;font-size:15px}.card-share:hover{color:var(--coral-dark)}.empty-timeline{padding:30px;color:var(--ink-soft);border:1px dashed var(--line);border-radius:12px;text-align:center}.memory-note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:45px}.memory-empty{grid-column:1 / -1;display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:250px;padding:30px;border:1px dashed rgba(248,244,235,.33);border-radius:12px;text-align:center}.memory-empty>span{color:var(--mustard);font-size:28px}.memory-empty h3{margin:15px 0 8px;font-size:18px}.memory-empty p{margin-bottom:20px;color:#f8f4ebab;font-size:11px;line-height:1.8}.memory-note-card,.memory-note-add{position:relative;display:flex;align-items:stretch;flex-direction:column;min-height:190px;padding:20px;color:var(--ink);border:0;border-radius:10px;background:var(--cream);text-align:left}.memory-note-card:nth-child(3n+2){background:#f5e6c7}.memory-note-card:nth-child(3n+3){background:#dceae4}.note-card-top{display:flex;align-items:center;justify-content:space-between;color:var(--coral-dark);font-family:DM Mono,monospace;font-size:9px}.note-card-top time{color:var(--ink-soft)}.memory-note-card p{margin:25px 0 0;color:var(--ink);font-size:14px;line-height:1.85}.note-delete{align-self:flex-end;margin-top:auto;padding:4px 0;color:var(--ink-soft);border:0;border-bottom:1px solid transparent;background:transparent;font-size:9px}.note-delete:hover{color:var(--coral-dark);border-color:currentColor}.memory-note-add{align-items:center;justify-content:center;color:#f8f4ebcc;border:1px dashed rgba(248,244,235,.34);background:transparent;text-align:center;transition:background .2s ease,border .2s ease}.memory-note-add:hover{border-color:var(--mustard);background:#f8f4eb12}.memory-note-add span{color:var(--mustard);font-size:24px}.memory-note-add strong{margin-top:8px;font-size:11px}.memory-safety-note{margin:0;color:#f8f4eb85;font-size:10px}.memory-safety-note span{color:var(--mustard);font-size:15px}.memory-more{padding-top:23px}#keepsake.book-offer.is-locked{display:none!important}.book-price-row{display:flex;align-items:flex-start;flex-direction:column;gap:5px;margin:-9px 0 23px;color:var(--ink-soft);font-size:10px}.book-price-row strong{color:var(--coral-dark);font-size:13px}.policy-drawer{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:75px 0 83px;border-top:1px solid var(--line)}.policy-copy{padding-top:3px;color:var(--ink-soft);font-size:11px;line-height:1.95}.policy-copy p{margin-bottom:17px}.policy-source{padding-top:8px;color:var(--ink);font-size:10px}.policy-source a{color:var(--coral-dark);border-bottom:1px solid currentColor}.lead-dialog{width:min(440px,calc(100% - 28px));padding:0;color:var(--ink);border:0;border-radius:16px;background:var(--cream);box-shadow:0 25px 80px #14122257}.lead-dialog::backdrop{background:#27233c9e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lead-card h2{font-size:30px}.lead-card input[type=email],.lead-card select{width:100%;padding:11px 12px;color:var(--ink);border:1px solid var(--line);border-radius:7px;outline-color:var(--coral);background:#fff;font-size:12px}.consent-check{display:flex!important;align-items:flex-start;gap:8px;margin-top:17px!important;font-size:10px!important;font-weight:500!important;line-height:1.55}.consent-check input{width:17px;height:17px;flex:0 0 auto;margin:0;accent-color:var(--coral)}.consent-check span{margin:0!important;color:var(--ink-soft);font-size:10px!important}.lead-note{display:block;margin-top:12px;color:var(--ink-soft);font-size:9px;line-height:1.6}@media(max-width:920px){.memory-note-grid{grid-template-columns:repeat(2,1fr)}.policy-drawer{gap:35px}}@media(max-width:640px){.prefecture-select{font-size:11px}.privacy-note{font-size:9px}.timeline-card{grid-template-columns:1fr}.timeline-card>.timeline-icon{display:none}.timeline-card-top{display:block}.timeline-age{display:inline-block;margin-top:9px}.timeline-card h3{font-size:16px}.timeline-card-body>p{font-size:12px}.reaction-row{align-items:flex-start;flex-direction:column}.reaction-actions{width:100%}.card-reaction{flex:1;min-height:42px}.card-share{width:42px;min-height:42px}.memory-note-grid{grid-template-columns:1fr;margin-top:31px}.memory-empty{min-height:220px}.policy-drawer{display:block;padding-top:65px}.policy-copy{margin-top:25px}.lead-card h2{font-size:26px}.book-price-row strong{font-size:12px}}
