/* Every collection uses the same device geometry and natural document scrolling. */
html[data-theme] { --setting-width:max(1700px,100vw); --setting-ratio:var(--setting-desktop-ratio); --setting-image:var(--setting-desktop); }
html[data-theme], [data-theme] .sender-completion { background-color:var(--desk); background-image:linear-gradient(to bottom,transparent 83%,var(--desk)),var(--setting-image); background-size:100% calc(var(--setting-width) * var(--setting-ratio)),var(--setting-width) auto; background-position:center top; background-repeat:no-repeat; background-attachment:scroll; }
@media(max-width:1199px) {
 html[data-theme] { --setting-width:max(650px,100vw); --setting-ratio:var(--setting-mobile-ratio); --setting-image:var(--setting-mobile); }
 [data-theme] .keepsake-feature { display:block; padding:0 20px; }
 [data-theme] .keepsake-copy { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); }
 [data-theme] .keepsake-copy button { display:none; }
 [data-theme] .keepsake-scene { max-width:680px; margin:0 auto; }
 body[data-view=compose] #promise-form > .sender-actions { flex-direction:column; }
}
@media(min-width:600px) and (max-width:1199px) {
 html[data-theme] { --setting-width:max(1050px,100vw); }
 [data-theme] .site-header, [data-theme] .book-reader .site-header { width:min(70%,760px); padding:24px 0 12px; justify-content:center; gap:8px 20px; }
 .site-nav { order:3; width:100%; justify-content:center; }
 [data-theme] .hero-copy h1 { font-size:clamp(48px,8vw,68px); }
}
@media(max-width:599px) {
 [data-theme] .keepsake-feature { padding:0; }
 [data-theme] .hero-copy h1 { font-size:clamp(38px,10vw,54px); }
}
@media print { html[data-theme] { background:white; } }
