/* September 2026 — an editorial family album, with the app's paper palette. */
:root{--paper:#fcf9f5;--paper-deep:#f2eae1;--ink:#29231f;--muted:#776d65;--taupe-deep:#826957;--line:#e5dbd1;--container:1280px}
body{background:var(--paper)}
h1[tabindex="-1"]:focus{outline:none}
.site-header{background:var(--paper)}
.header-inner{min-height:84px}
.brand img{box-shadow:0 5px 15px #4730220d}
.desktop-nav a{position:relative}
.desktop-nav a[aria-current]::after{content:'';position:absolute;bottom:3px;left:0;width:15px;height:1px;background:var(--taupe)}
.header-download{border-bottom:1px solid var(--line)}
.hero{position:relative;padding:56px 0 76px;background:radial-gradient(ellipse at 78% 52%,#eadccd66,transparent 54%)}
.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:50px}
.hero h1{font-size:clamp(59px,6vw,88px);line-height:1.06;letter-spacing:-.055em}
.hero-copy{padding-block:12px}
.hero-description{max-width:470px;font-size:16px;line-height:1.85}
.hero-copy .eyebrow{font-size:10px}
.release-pill{margin-bottom:30px;border:0;padding:0;gap:10px;font-size:11px;letter-spacing:.03em}
.release-pill .status-dot{box-shadow:0 0 0 5px #b69d8020}
.hero-showcase{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(0,.8fr);column-gap:26px;row-gap:24px;align-items:center;padding:28px 0 4px;min-width:0}
.hero-showcase::before{inset:9% -8px 13%;border-radius:50% 50% 42% 42%;background:radial-gradient(ellipse,#e4d0bb80,transparent 69%)}
.hero-showcase>.phone-figure{align-self:start}
.hero-showcase .phone{max-width:310px}
.hero-showcase .phone-figure figcaption{font-size:10px;max-width:220px}
.hero-souvenir{min-width:0;padding-top:100px;transform:translate3d(0,var(--parallax-y,0px),0)}
.hero-souvenir>img{width:100%;height:auto;border-radius:2px;box-shadow:0 14px 25px -14px #54382066,0 1px 3px #54382022;rotate:5deg}
.souvenir-label{display:block;margin:0 0 24px;font:9px/1.7 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--taupe-deep)}
.hero-souvenir figcaption{font:italic 23px/1.2 var(--serif);color:var(--taupe-deep);padding-top:28px}
.showcase-foot{grid-column:1/-1;padding-top:0}
.showcase-foot p{font-size:18px}
.hero-actions{gap:10px 23px}
.hero-footnote{font-size:11px}
.principles{padding-block:24px}
.principles strong{font-size:27px}
.principles span{font-size:11px}
.section{padding-block:96px}
.section-heading h2,.section-copy h2,.story-title h2{letter-spacing:-.045em}
.story-section{padding-top:90px}
.story-layout{gap:70px}
.story-photo{grid-column:1/-1;margin-top:10px}
.story-photo-window{overflow:hidden;border-radius:4px;aspect-ratio:2.7;position:relative}
.story-photo img{width:100%;height:calc(100% + 60px);object-fit:cover;object-position:50% 54%;margin-top:-30px;transform:translate3d(0,var(--parallax-y,0px),0)}
.story-photo figcaption{display:flex;justify-content:space-between;gap:20px;font:10px/1.5 var(--sans);letter-spacing:.08em;color:var(--taupe-deep);padding-top:17px}
.story-photo figcaption span:last-child{font:italic 20px/1.2 var(--serif);letter-spacing:0}
.category-section{background:#f4eee7;border-block:1px solid #eadfd4}
.category-grid{gap:0 36px}
.category-card{background:none;border:0;border-top:1px solid #d9c9b9;border-radius:0;padding:30px 0 35px}
.category-top{margin-bottom:28px}
.category-top svg{width:29px;height:29px}
.category-card h3{font-size:31px}
.category-card p{max-width:315px;font-size:14px}
.release-heading{gap:70px}
.new-grid{gap:20px}
.new-card{position:relative;border-radius:5px;background:#f6f0e9;border:0;padding:37px 30px;overflow:hidden}
.new-card:nth-child(2){background:#e8dbcc}
.new-card:nth-child(3){background:#efe9e1}
.new-card>svg{width:35px;height:35px;margin-bottom:42px}
.new-card:nth-child(2)::after{content:'';position:absolute;right:23px;top:25px;height:80px;width:14px;background:repeating-linear-gradient(to bottom,transparent 0 9px,#bba48f 9px 10px);opacity:.7;border-left:1px solid #bba48f}
.new-card h3{font-size:33px}
.new-card p{font-size:13px}
.media-showcase{border-radius:5px;background:radial-gradient(ellipse at 50% 40%,#e4d4c0 0,#f0e7db 55%,#f4eee6 100%);padding:48px 30px}
.media-showcase .phone{max-width:286px}
.media-showcase>.phone-figure{width:100%}
.media-section{padding-top:30px}
.phone{border:1px solid #6c625a;padding:7px;border-radius:clamp(26px,3.4vw,46px);background:linear-gradient(125deg,#3d3935,#111 45%,#514a45);box-shadow:inset 0 0 0 2px #24211f,0 3px 5px #35231422,0 28px 38px -20px #4c352355;max-width:310px;aspect-ratio:auto}
.phone::before{content:'';position:absolute;z-index:1;left:37%;top:2.2%;width:26%;height:2.6%;border-radius:30px;background:#151412;pointer-events:none}
.phone-screen{border-radius:clamp(20px,2.8vw,39px);background:#151412;aspect-ratio:9 / 19.5;height:auto}
.phone-screen img{object-fit:contain;width:100%;height:100%}
.phone-duo{padding:40px 4px;gap:25px;align-items:center}
.phone-duo .phone{max-width:270px;border-width:1px;padding:6px;border-radius:35px}
.phone-duo .phone-screen{border-radius:29px}
.phone-figure{gap:23px}
.phone-figure figcaption{font-size:11px;color:var(--taupe-deep)}
.polaroid-section{background:#f1e8dd;border-block:1px solid #e8daca}
.polaroid-duo{grid-template-columns:minmax(0,1fr) minmax(0,.88fr);gap:28px;align-items:center}
.polaroid-print{display:flex;flex-direction:column;align-items:center;gap:24px;min-width:0;transform:translate3d(0,var(--parallax-y,0px),0)}
.polaroid-print>img{width:100%;height:auto;box-shadow:0 2px 3px #54382018,0 22px 28px -17px #54382055;border-radius:2px;rotate:3deg}
.polaroid-print figcaption{font-size:11px;color:var(--taupe-deep);text-align:center;max-width:230px}
.polaroid-print figcaption span{color:var(--taupe);margin-right:5px}
.image-note{max-width:450px}
.privacy-section{background:#e8dfd5;color:var(--ink)}
.privacy-section .eyebrow,.privacy-section em{color:var(--taupe-deep)}
.privacy-section p{color:#6d5e52}
.privacy-section .text-link{color:var(--taupe-deep);border-color:#bda895}
.privacy-details article{border-color:#cfc0b1}
.privacy-details svg{color:#826957}
.closing{position:relative;background:radial-gradient(ellipse at 50% 15%,#dfcbb180,transparent 65%),#f3eae0;isolation:isolate;overflow:hidden}
.closing .app-tile{width:104px;height:104px;border-radius:24px;margin-bottom:35px}
.closing h2{font-size:clamp(45px,5.2vw,76px)}
.welcome-replay{display:inline-flex;align-items:center;gap:8px;margin-top:30px;min-height:44px;border:0;background:none;font-size:11px;color:var(--taupe-deep);text-decoration:underline;text-underline-offset:5px}
.welcome-replay svg{width:14px;height:14px}
.app-tile{display:block;width:154px;height:154px;border-radius:35px;overflow:hidden;box-shadow:0 1px 1px #fff,0 10px 30px -7px #6f4c3530,0 0 0 1px #a8907515;background:var(--paper)}
.app-tile img{width:100%;height:100%}
.page-hero{background:radial-gradient(ellipse at 90% 10%,#e8d8c640,transparent 65%)}
.about-layout blockquote{border-radius:4px;background:#eee2d5}
.contact-card{border-radius:5px;border:1px solid var(--line)}
.anchor-nav a{background:#fffcf866}
.welcome:not([open]){display:none}
.welcome{position:fixed;inset:0;z-index:100;margin:0;padding:30px 24px;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;border:0;color:var(--ink);background:radial-gradient(ellipse at 50% 40%,#e8d7c34d,transparent 60%),var(--paper);overflow:auto;overscroll-behavior:contain;transition:opacity .5s ease,transform .5s ease}
.welcome::backdrop{background:var(--paper)}
body.welcome-open{overflow:hidden}
.welcome-inner{position:relative;z-index:1;min-height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;max-width:720px;margin:auto;padding-block:25px}
.welcome-prelude{font-size:10px;letter-spacing:.17em;margin-bottom:36px;animation:welcome-arrive .8s .1s both}
.welcome .app-tile{flex-shrink:0;animation:tile-arrive 1.2s cubic-bezier(.2,.75,.2,1) both}
.welcome-message{display:flex;flex-direction:column;align-items:center;margin-top:30px;animation:welcome-arrive .9s .35s both}
.welcome-message>.eyebrow{font-size:9px;margin-bottom:12px}
.welcome h2{font-size:clamp(42px,6vw,62px);line-height:1.05}
.welcome .store-link{margin-top:17px;padding:13px}
.welcome-skip{display:inline-flex;align-items:center;gap:13px;min-height:44px;font-size:12px;border:0;border-bottom:1px solid #c5b5a4;background:none;padding:4px 0;color:var(--taupe-deep)}
.welcome-skip svg{width:17px;height:17px}
.welcome-progress{width:100px;height:1px;background:#d1bdab;margin-top:30px;transform-origin:left;animation:welcome-progress 4.4s linear both}
.welcome-rings{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.welcome-rings i{position:absolute;left:50%;top:44%;width:540px;height:540px;margin:-270px;border:1px solid #bfa78d23;border-radius:50%;animation:ring-arrive 2.8s cubic-bezier(.15,.55,.25,1) both}
.welcome-rings i:nth-child(2){width:850px;height:850px;margin:-425px;animation-delay:.12s}
.welcome-rings i:nth-child(3){width:1180px;height:1180px;margin:-590px;animation-delay:.24s}
.welcome.is-leaving{opacity:0;transform:translateY(-18px);pointer-events:none}
@keyframes tile-arrive{from{opacity:0;transform:translateY(24px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes welcome-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes ring-arrive{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}
@keyframes welcome-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(hover:hover){.category-card{transition:transform .3s}.category-card:hover{transform:translateY(-4px)}.app-tile{transition:box-shadow .25s}.app-tile:hover{box-shadow:0 12px 36px -8px #6f4c3550}.welcome-skip:hover{color:var(--ink)}}
@media(min-width:1500px){.hero{padding-block:70px 90px}.hero-grid{gap:70px}.hero-showcase{column-gap:35px}}
@media(max-width:1100px){.hero-grid{gap:30px;grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(50px,6.1vw,68px)}.hero-showcase{column-gap:17px}.hero-souvenir figcaption{font-size:20px}.hero-description{font-size:15px}.new-card{padding:30px 24px}.new-card h3{font-size:30px}}
@media(min-width:721px) and (max-width:980px){.split-layout{grid-template-columns:1fr;gap:44px}.split-layout>.section-copy{max-width:660px}.media-showcase{width:100%;max-width:620px;margin:auto}.phone-duo{max-width:620px;width:100%;margin:auto}.polaroid-duo{max-width:580px}.polaroid-print>img{max-width:225px}.media-section .media-showcase{order:2}}
@media(max-width:880px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero-copy{max-width:620px}.hero h1{font-size:clamp(48px,8.7vw,74px)}.hero-description{max-width:540px}.hero-showcase{width:min(530px,100%);margin-inline:auto;padding-inline:10px}.hero-showcase .phone{max-width:300px}.hero-souvenir{padding-top:70px}.story-layout{gap:40px}}
@media(max-width:720px){
.header-inner{min-height:72px}.hero{padding:29px 0 50px}.hero-copy{padding:0}.hero h1{font-size:clamp(45px,11.7vw,72px);line-height:1.06}.hero-copy .eyebrow{font-size:9px;letter-spacing:.11em}.release-pill{margin-bottom:24px}.hero-description{font-size:15px}.hero-grid{gap:30px}
.hero-showcase{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 4px 0;max-width:450px}.hero-showcase .phone{max-width:290px}.hero-showcase .phone-figure figcaption{font-size:11px}.hero-souvenir{display:none}.showcase-foot p{font-size:18px}
.phone{padding:5px;border-radius:31px}.phone-screen{border-radius:25px}.phone::before{top:2.1%}.hero-showcase .phone-figure{gap:18px}
.section{padding-block:65px}.story-layout{gap:26px}.story-photo{margin-top:7px}.story-photo-window{aspect-ratio:1.35}.story-photo img{object-position:62% 50%}.story-photo figcaption{font-size:8px;gap:10px}.story-photo figcaption span:last-child{font-size:17px}
.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.category-card{padding:25px 0 28px}.category-card h3{font-size:27px}.category-card p{font-size:12px}.category-top{margin-bottom:21px}.category-top svg{width:25px;height:25px}
.new-card{padding:29px 26px;border-radius:5px}.new-card>svg{margin-bottom:28px}.new-card h3{font-size:33px}.new-card p{font-size:14px}.new-grid{gap:15px}.release-heading{gap:18px}
.media-showcase{max-width:100%;border-radius:5px;padding:39px 35px}.media-showcase .phone{max-width:278px}.media-section{padding-top:12px}
.phone-duo{grid-template-columns:1fr;max-width:345px;gap:48px;padding:20px 16px}.phone-duo .phone{max-width:275px;border-radius:39px;padding:6px}.phone-duo .phone-screen{border-radius:33px}.phone-duo figcaption{font-size:12px}.polaroid-duo{max-width:345px;gap:52px}.polaroid-print>img{max-width:253px}.polaroid-print figcaption{font-size:12px}
.privacy-section{padding-block:62px}.privacy-details h3{font-size:27px}.closing .app-tile{width:90px;height:90px;border-radius:21px;margin-bottom:29px}.closing h2{font-size:47px}.welcome-replay{font-size:10px}.page-hero{padding-top:42px}.contact-card{border-radius:5px}.about-layout blockquote{border-radius:4px}
.welcome{padding:20px}.welcome-prelude{font-size:9px;max-width:290px;line-height:1.8;margin-bottom:28px}.welcome .app-tile{width:124px;height:124px;border-radius:29px}.welcome-message{margin-top:27px}.welcome h2{font-size:47px}.welcome .store-link{margin-top:15px}.welcome-progress{margin-top:25px}.welcome-rings i{width:370px;height:370px;margin:-185px}
}
@media(max-width:374px){.hero h1{font-size:43px}.hero-showcase{column-gap:15px}.hero-souvenir figcaption{font-size:17px}.souvenir-label{font-size:7px}.phone{border-radius:27px}.phone-screen{border-radius:21px}.category-grid{grid-template-columns:1fr}.category-card p{font-size:14px}.category-card h3{font-size:29px}}
@media(max-height:650px){.welcome{padding-block:12px}.welcome-inner{padding-block:8px}.welcome-prelude{margin-bottom:15px}.welcome .app-tile{width:86px;height:86px;border-radius:20px}.welcome-message{margin-top:17px}.welcome h2{font-size:37px}.welcome-message>.eyebrow{margin-bottom:7px}.welcome .store-link{margin-top:5px}.welcome-progress{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.welcome *,.category-card,.app-tile{animation:none!important;transition:none!important}.welcome{transition:none}.welcome.is-leaving{transform:none}.hero-souvenir,.polaroid-print,.story-photo img{transform:none!important}.welcome-progress{display:none}}
@media print{.welcome,.welcome-replay{display:none!important}}
