:root{--color-bg:#faf8f5;--color-bg-alt:#f0ede6;--color-surface:#fff;--color-text:#2c2825;--color-text-subtle:#8a8279;--color-line:rgba(44,40,37,.12);--color-accent:#c47b5a;--color-accent-dark:#a8624a;--color-sage:#7ba38e;--color-light:#faf8f5;--font-sans:"Zen Maru Gothic", sans-serif;--container-wide:75rem;--container-base:67.5rem;--space-section:clamp(4.5rem, 8vw, 8rem);--header-height:4rem;--breakpoint-md:48rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,h4,p,ul,ol,dl,dd{margin:0}ul,ol{padding:0;list-style:none}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);line-height:1.7}main{display:block}::selection{color:#fff;background:var(--color-accent)}[data-animate]{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(1.5rem)}[data-animate].is-visible{opacity:1;transform:translateY(0)}.u-inner{width:min(calc(100% - 3rem),var(--container-base));margin-left:auto;margin-right:auto}@media(max-width:768px){.u-inner{width:min(calc(100% - 2rem),var(--container-base))}}@media(max-width:768px){.u-hidden-sp{display:none!important}}.u-hidden-pc{display:none!important}@media(max-width:768px){.u-hidden-pc{display:block!important}}.site-header{z-index:30;-webkit-backdrop-filter:blur(.875rem);backdrop-filter:blur(.875rem);border-bottom:1px solid var(--color-line);background:#faf8f5e0;position:sticky;top:0}.site-header__inner{width:min(calc(100% - 3rem),var(--container-wide));min-height:var(--header-height);justify-content:space-between;align-items:center;margin-left:auto;margin-right:auto;display:flex}@media(max-width:768px){.site-header__inner{width:min(calc(100% - 2rem),var(--container-wide))}}.site-header__logo{letter-spacing:.06em;font-size:1.1rem;font-weight:700}.site-header__cta{padding:.5rem 1.25rem;font-size:.8125rem}.site-footer{border-top:1px solid var(--color-line);padding:2rem 0}.site-footer__inner{width:min(calc(100% - 3rem),var(--container-wide));justify-content:space-between;align-items:center;gap:1.5rem;margin-left:auto;margin-right:auto;display:flex}@media(max-width:768px){.site-footer__inner{width:min(calc(100% - 2rem),var(--container-wide));flex-direction:column;align-items:center;gap:1rem}}.site-footer__copy{color:var(--color-text-subtle);font-size:.8125rem}.site-footer__links{color:var(--color-text-subtle);gap:1.5rem;font-size:.8125rem;display:flex}.site-footer__links a:hover{color:var(--color-text)}@media(max-width:768px){.site-footer__links{gap:1rem;font-size:.75rem}}.section{padding:var(--space-section) 0}.section--alt{background:var(--color-bg-alt)}.section__inner{width:min(calc(100% - 3rem),var(--container-base));margin-left:auto;margin-right:auto}@media(max-width:768px){.section__inner{width:min(calc(100% - 2rem),var(--container-base))}}.section-heading{max-width:53.75rem;margin-bottom:2.25rem}.page-header{padding:5.5rem 0 1.75rem}.page-header__inner{width:min(calc(100% - 3rem),var(--container-base));margin-left:auto;margin-right:auto}@media(max-width:768px){.page-header__inner{width:min(calc(100% - 2rem),var(--container-base))}}.page-header__eyebrow{color:var(--color-accent);letter-spacing:.12em;text-transform:uppercase;font-size:.9rem;font-weight:700}.page-header__title{margin-top:.625rem;font-size:max(2.4rem,min(5vw,4.8rem));line-height:1.02}.page-header__lead{max-width:45rem;color:var(--color-text-subtle);margin-top:.875rem}.breadcrumb{width:min(calc(100% - 3rem),var(--container-base));margin-left:auto;margin-right:auto;margin-bottom:1.5rem}@media(max-width:768px){.breadcrumb{width:min(calc(100% - 2rem),var(--container-base))}}.breadcrumb ol{color:var(--color-text-subtle);flex-wrap:wrap;gap:.625rem;font-size:.92rem;display:flex}.breadcrumb li+li:before{content:"/";margin-right:.625rem}.button{border:1px solid transparent;border-radius:62.4375rem;justify-content:center;align-items:center;min-height:3.25rem;padding:0 1.375rem;font-weight:700;transition:all .25s;display:inline-flex}.button--primary{background:var(--color-accent);color:#fff}.button--primary:hover{background:var(--color-accent-dark)}.button--secondary{border-color:var(--color-line);background:0 0}.button--secondary:hover{background:#2c28250a;border-color:#2c28254d}.section-title__eyebrow{color:var(--color-accent);letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:700}.section-title{letter-spacing:-.04em;margin-top:.5rem;font-size:max(2rem,min(4vw,3.5rem));line-height:1.15}.page-home{overflow-x:clip}.hero{padding:max(2rem,min(6vw,5rem)) 0}.hero__inner{width:min(calc(100% - 3rem),var(--container-base));gap:max(2rem,min(5vw,3.5rem));margin-left:auto;margin-right:auto;display:grid}@media(max-width:768px){.hero__inner{width:min(calc(100% - 2rem),var(--container-base))}}.hero__photo{border-radius:1.5rem;overflow:hidden}.hero__photo img{object-fit:cover;width:100%;height:max(17.5rem,min(50vw,32.5rem));display:block}.hero__content{text-align:center;max-width:37.5rem;margin-left:auto;margin-right:auto}.hero__title{letter-spacing:.04em;font-size:max(1.75rem,min(5vw,2.5rem));font-weight:700;line-height:1.5}.hero__lead{color:var(--color-text-subtle);margin-top:1rem;font-size:max(.9375rem,min(1.4vw,1.0625rem));line-height:1.8}.hero__actions{margin-top:2rem}.daily__heading{text-align:center;color:var(--color-text-subtle);letter-spacing:.04em;margin-bottom:max(2.5rem,min(6vw,4.5rem));font-size:max(1.25rem,min(3vw,1.625rem));font-weight:700}.daily__scene{grid-template-columns:1fr 1fr;align-items:center;gap:max(1.5rem,min(4vw,3rem));display:grid}.daily__scene+.daily__scene{margin-top:max(3rem,min(8vw,6rem))}@media(max-width:768px){.daily__scene{grid-template-columns:1fr;gap:1.5rem}}.daily__scene--reverse{grid-template-columns:1fr 1fr}.daily__scene--reverse .daily__body{order:-1}@media(max-width:768px){.daily__scene--reverse .daily__body{order:1}}@media(max-width:768px){.daily__scene--reverse{grid-template-columns:1fr}}.daily__photo{border-radius:1.25rem;overflow:hidden}.daily__photo img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}.daily__body{flex-direction:column;gap:1rem;display:flex}.daily__time{letter-spacing:.12em;text-transform:lowercase;color:var(--color-accent);font-size:.8125rem;font-weight:500}.daily__voice{font-size:max(1.125rem,min(2.5vw,1.375rem));font-weight:500;line-height:1.6}.daily__mock{border-radius:1.25rem;max-width:11.25rem;overflow:hidden;box-shadow:0 .75rem 2.5rem #2c28251a}.daily__mock img{width:100%;height:auto;display:block}@media(max-width:768px){.daily__mock{max-width:8.75rem}}.memory__card{text-align:center;margin-bottom:max(2.5rem,min(6vw,4rem))}.memory__heading{margin-bottom:2rem;font-size:max(1.25rem,min(3vw,1.625rem));font-weight:700}.memory__preview{background:var(--color-surface);border:1px solid var(--color-line);border-radius:1.5rem;max-width:25rem;margin-left:auto;margin-right:auto;padding:1.5rem}.memory__label{color:var(--color-accent);background:#c47b5a1a;border-radius:62.4375rem;padding:.25rem .75rem;font-size:.8125rem;font-weight:500;display:inline-block}.memory__photo{border-radius:1rem;margin-top:1rem;overflow:hidden}.memory__photo img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}.memory__caption{color:var(--color-text-subtle);margin-top:.75rem;font-size:.875rem}.memory__info{gap:2rem;max-width:37.5rem;margin-left:auto;margin-right:auto;display:grid}.memory__pricing{text-align:center;color:var(--color-text-subtle);font-size:.9375rem}.memory__price{margin-top:.25rem}.memory__price strong{color:var(--color-text);font-size:1.25rem}.memory__price span{font-size:.8125rem}.memory__faq{gap:.5rem;display:grid}.faq-item{border:1px solid var(--color-line);background:var(--color-surface);border-radius:1rem;overflow:hidden}.faq-item__question{cursor:pointer;width:100%;padding:1rem 1.25rem;font-size:.9375rem;font-weight:500;list-style:none;display:block}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question::marker{content:""}.faq-item__answer{color:var(--color-text-subtle);padding:0 1.25rem 1rem;font-size:.875rem;line-height:1.7}.cta__inner{text-align:center;padding:max(3rem,min(8vw,5rem)) 0}.cta__heading{font-size:max(1.25rem,min(3vw,1.625rem));font-weight:700}.cta__actions{margin-top:1.75rem}.page-lower main{padding-bottom:3rem}
