/* The keepsakes share the site's type with a quieter paper, ink and clay palette. */
.keepsakes-page{--keepsake-paper:#f5f0e6;--keepsake-forest:#334c3f;--keepsake-clay:#a54832;--keepsake-line:#d3cebe;--keepsake-muted:#59604f;background:var(--keepsake-paper)}
.keepsakes-announcement{display:flex;justify-content:space-between;gap:20px;padding:9px 3.2%;background:var(--keepsake-forest);color:#f8f1e3;font-size:9px;font-weight:700;letter-spacing:.1em}
.keepsakes-header{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:25px 3.2%;border-bottom:1px solid var(--keepsake-line)}
.keepsakes-header .wordmark sup,.keepsakes-footer .wordmark sup{font-size:12px;vertical-align:top;margin-left:4px}
.keepsakes-header nav{display:flex;gap:27px;font-size:11px;font-weight:700}
.keepsakes-header nav a{padding:8px 0}
.keepsakes-header nav a:hover,.keepsakes-header nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}
.keepsakes-intro{max-width:1600px;margin:auto;padding:40px 5.2% 31px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.keepsake-kicker{font-size:9px;line-height:1.5;font-weight:700;letter-spacing:.11em}
.keepsakes-intro h1{font-family:var(--display);font-size:clamp(42px,4.2vw,67px);font-weight:900;line-height:1.02;margin-top:12px;letter-spacing:-.01em}
.keepsakes-intro h1 em{font-style:normal;color:var(--keepsake-clay)}
.keepsakes-intro>p{max-width:280px;font-size:12px;line-height:1.75;margin-bottom:3px}
.keepsake-jump-nav{max-width:1600px;margin:auto;padding:0 5.2%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}
.keepsake-jump-nav a{display:flex;gap:12px;align-items:center;min-height:59px;border-top:1px solid var(--keepsake-line);font-size:10px;font-weight:700;line-height:1.4}
.keepsake-jump-nav a>span{font-size:8px;color:var(--keepsake-clay);font-weight:400}
.keepsake-jump-nav a:hover{text-decoration:underline;text-underline-offset:4px}
.keepsake-collection{max-width:1600px;margin:auto;padding:0 5.2% 66px}
.keepsake-book{--book-accent:var(--keepsake-forest);--book-paper:#dee2d5;padding-top:17px;scroll-margin-top:24px}
.keepsake-book+.keepsake-book{margin-top:69px}
.keepsake-book--2{--book-accent:#934631;--book-paper:#eadcc8}
.keepsake-book--3{--book-accent:#55613c;--book-paper:#e2e2cd}
.keepsake-book--4{--book-accent:#4c4a61;--book-paper:#e1dde4}
.keepsake-book-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:17px 0;border-top:1px solid #aaa995;border-bottom:1px solid var(--keepsake-line);font-size:9px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
.keepsake-status{display:inline-flex;align-items:center;gap:8px;color:var(--book-accent);white-space:nowrap}
.keepsake-status::before{content:"";display:block;width:6px;height:6px;border:1px solid currentColor;border-radius:50%}
.keepsake-book-body{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding-top:25px;align-items:start}
.keepsake-gallery{margin:0;background:var(--book-paper);border:1px solid #c9cdbe;padding:0 20px 18px;min-width:0}
.keepsake-image-link{position:relative;display:flex;align-items:center;justify-content:center;min-height:492px;padding:30px 18px 40px}
.keepsake-image-link>img{width:auto;max-width:100%;height:440px;object-fit:contain;box-shadow:0 9px 17px #25302122;transition:transform .2s ease}
.keepsake-image-link:hover>img{transform:translateY(-3px)}
.keepsake-zoom-note{position:absolute;right:0;bottom:9px;display:flex;align-items:center;gap:17px;background:#f9f5ea;padding:8px 10px;font-size:8px;font-weight:700}
.keepsake-zoom-note>span{font-size:17px;font-weight:400;line-height:1}
.keepsake-view-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:8px 0 10px}
.keepsake-view-controls button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:9px 5px 7px;background:#f8f5ed66;border:1px solid #9ca38f;font-size:9px;min-width:0}
.keepsake-view-controls button img{width:40px;height:57px;object-fit:contain;box-shadow:0 1px 3px #2432221a}
.keepsake-view-controls button[aria-pressed=true]{background:var(--book-accent);border-color:var(--book-accent);color:#fff}
.keepsake-view-controls button:hover:not([aria-pressed=true]){background:#f8f5ed}
.keepsake-gallery figcaption{text-align:center;font-size:9px;line-height:1.6;color:#46503d;padding-top:8px}
.keepsake-static-links{text-align:center;font-size:10px;line-height:1.8;margin-top:10px}
.keepsake-static-links a{text-decoration:underline;text-underline-offset:3px}
.keepsake-book-copy{align-self:center;padding:9px 0 14px;min-width:0}
.keepsake-book-copy>.keepsake-kicker{color:var(--book-accent)}
.keepsake-book-copy h2{font-family:var(--display);font-size:clamp(54px,5.65vw,91px);font-weight:900;line-height:.95;color:var(--book-accent);letter-spacing:-.012em;margin:19px 0 22px}
.keepsake-tagline{font-size:17px;font-weight:700;line-height:1.45;margin-bottom:13px}
.keepsake-description{max-width:480px;font-size:13px;line-height:1.85;color:#4f5549}
.keepsake-facts{display:flex;gap:38px;margin:23px 0 16px;padding:17px 0;border-block:1px solid var(--keepsake-line)}
.keepsake-facts p{display:flex;align-items:center;gap:11px;max-width:200px}
.keepsake-facts strong{font-family:var(--display);font-weight:900;font-size:35px;line-height:1}
.keepsake-facts span{font-size:9px;line-height:1.5;max-width:112px}
.keepsake-detail{font-size:11px;line-height:1.8;color:#555c4e;max-width:455px}
.keepsake-prompt{margin:23px 0 19px;border-left:2px solid var(--book-accent);padding:4px 0 4px 17px}
.keepsake-prompt>span{font-size:8px;letter-spacing:.06em;text-transform:uppercase;color:var(--keepsake-muted)}
.keepsake-prompt>p{font-size:15px;line-height:1.5;margin-top:6px;font-weight:700;color:var(--book-accent)}
.keepsake-invitation{font-size:11px;line-height:1.8;color:#555c4e;max-width:450px}
.keepsake-pdf{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:49px;padding:15px 18px;margin-top:22px;background:var(--book-accent);color:#fff;font-size:10px;font-weight:700}
.keepsake-pdf:hover{background:var(--ink)}
.keepsake-pdf span{font-size:9px;font-weight:400}
.keepsake-order-note{font-size:10px;line-height:1.7;color:#59604f;margin-top:12px}
.keepsake-note{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:63px 7%;background:#e3e6d9;border-block:1px solid #c7cebc}
.keepsake-note h2{font-family:var(--display);font-size:clamp(61px,6.2vw,94px);line-height:.94;letter-spacing:-.01em;font-weight:900;color:var(--keepsake-forest);margin:20px 0 23px}
.keepsake-note>div>p:not(.keepsake-kicker){max-width:450px;font-size:13px;line-height:1.85;color:#4b5846}
.keepsake-letter{display:inline-flex;gap:26px;align-items:center;min-height:44px;font-size:11px;font-weight:700;border-bottom:1px solid #6d7b63;margin-top:20px}
.keepsake-letter>span{font-size:21px;font-weight:400;line-height:1}
.keepsake-letter:hover{color:var(--keepsake-clay)}
.keepsake-note .keepsake-letter-note{font-size:10px!important;margin-top:14px}
.keepsake-faq{padding-top:8px}
.keepsake-faq details{border-top:1px solid #b4bfa7;padding:18px 0}
.keepsake-faq details:last-child{border-bottom:1px solid #b4bfa7}
.keepsake-faq summary{font-size:12px;font-weight:700;line-height:1.6;cursor:pointer}
.keepsake-faq summary:focus-visible{outline:3px solid #6a46ed;outline-offset:6px}
.keepsake-faq p{font-size:12px;line-height:1.8;color:#4b5846;margin-top:14px;max-width:450px}
.keepsakes-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;padding:43px 5.2%}
.keepsakes-footer>p{font-size:11px;line-height:1.7}
.keepsakes-footer nav{display:grid;grid-template-columns:repeat(2,auto);gap:14px 27px;font-size:10px;font-weight:700}
.keepsakes-footer nav a:hover{text-decoration:underline;text-underline-offset:4px}
.keepsake-viewer{width:min(1060px,96vw);max-height:96dvh;max-width:96vw;padding:0;border:0;background:var(--keepsake-paper);overflow:auto}
.keepsake-viewer::backdrop{background:#111b16e0;backdrop-filter:blur(4px)}
.keepsake-viewer-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 23px;background:var(--keepsake-paper);border-bottom:1px solid var(--keepsake-line)}
.keepsake-viewer-bar h2{font-size:13px;line-height:1.5}
.keepsake-viewer-bar button{display:flex;align-items:center;gap:15px;background:transparent;min-height:40px;font-size:10px;font-weight:700}
.keepsake-viewer-bar button span{font-size:27px;font-weight:400;line-height:1}
.keepsake-viewer-image{display:flex;justify-content:center;background:#dfe2d7;padding:20px}
.keepsake-viewer-image img{max-height:65dvh;width:auto;max-width:100%;object-fit:contain;box-shadow:0 6px 15px #21312622}
.keepsake-viewer-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 24px 0;font-size:10px}
.keepsake-viewer-navigation button{background:transparent;font-size:10px;display:flex;gap:12px;align-items:center;min-height:44px}
.keepsake-viewer-navigation button>span{font-size:20px}
.keepsake-viewer-controls{display:flex;justify-content:center;gap:7px;padding:1px 20px 7px;flex-wrap:wrap}
.keepsake-viewer-controls button{font-size:10px;min-height:41px;min-width:64px;padding:10px 12px;border:1px solid #949c8c;background:transparent}
.keepsake-viewer-controls button[aria-pressed=true]{background:var(--keepsake-forest);color:#fff;border-color:var(--keepsake-forest)}
.keepsake-viewer>p{text-align:center;font-size:10px;padding:6px 20px 18px;line-height:1.5;color:#46503d}
body.keepsake-viewer-open{overflow:hidden}
@media(min-width:1500px){.keepsake-image-link{min-height:570px}.keepsake-image-link>img{height:520px}}
@media(max-width:1100px){.keepsakes-intro{gap:25px;align-items:flex-start}.keepsakes-intro h1{max-width:500px;font-size:56px}.keepsakes-intro>p{max-width:235px;padding-top:29px}.keepsake-jump-nav{gap:18px}.keepsake-jump-nav a{font-size:9px}.keepsake-book-body{gap:4%}.keepsake-gallery{padding-inline:14px}.keepsake-image-link{min-height:452px;padding-inline:4px}.keepsake-image-link>img{height:395px}.keepsake-view-controls{gap:5px}.keepsake-view-controls button{font-size:8px;padding-inline:2px}.keepsake-view-controls button img{width:34px;height:48px}.keepsake-book-copy h2{font-size:61px}.keepsake-tagline{font-size:15px}.keepsake-description{font-size:12px}.keepsake-facts{gap:24px}.keepsakes-footer{flex-wrap:wrap}.keepsakes-footer .wordmark{font-size:29px}}
@media(max-width:760px){
  .keepsakes-header{padding:22px 5%;flex-wrap:wrap;gap:21px}
  .keepsakes-header nav{width:100%;justify-content:space-between;font-size:10px;gap:12px}
  .keepsakes-header .wordmark{font-size:31px}
  .keepsakes-intro{padding:30px 5% 24px;display:block}
  .keepsakes-intro h1{font-size:clamp(44px,8.6vw,65px);max-width:540px;line-height:1.04;margin-top:11px}
  .keepsakes-intro>p{max-width:430px;padding-top:0;margin-top:16px;font-size:12px}
  .keepsake-kicker{font-size:8px}
  .keepsake-jump-nav{padding:0 5%;grid-template-columns:1fr 1fr;gap:0 18px}
  .keepsake-jump-nav a{font-size:9px;min-height:49px;gap:9px}
  .keepsake-collection{padding:0 5% 45px}
  .keepsake-book{padding-top:13px}
  .keepsake-book+.keepsake-book{margin-top:43px}
  .keepsake-book-top{font-size:8px;padding:14px 0;gap:15px}
  .keepsake-book-body{grid-template-columns:1fr;gap:27px;padding-top:18px}
  .keepsake-gallery{padding:0 15px 14px}
  .keepsake-image-link{min-height:0;padding:23px 12px 41px}
  .keepsake-image-link>img{height:auto;width:auto;max-height:440px;max-width:100%}
  .keepsake-view-controls{gap:7px}
  .keepsake-view-controls button{font-size:8px;padding:8px 3px}
  .keepsake-view-controls button img{width:36px;height:51px}
  .keepsake-gallery figcaption{font-size:8px;padding-top:5px}
  .keepsake-book-copy{padding:0}
  .keepsake-book-copy h2{font-size:clamp(56px,10.6vw,80px);margin:14px 0 18px}
  .keepsake-tagline{font-size:16px}
  .keepsake-description{font-size:13px;max-width:510px}
  .keepsake-facts{margin:20px 0 15px;gap:34px}
  .keepsake-facts strong{font-size:37px}
  .keepsake-facts span{font-size:10px}
  .keepsake-detail,.keepsake-invitation{font-size:12px;max-width:510px}
  .keepsake-prompt{margin:22px 0 18px}
  .keepsake-prompt>span{font-size:8px}
  .keepsake-prompt>p{font-size:16px}
  .keepsake-order-note{font-size:10px}
  .keepsake-note{grid-template-columns:1fr;padding:42px 6%;gap:30px}
  .keepsake-note h2{font-size:72px}
  .keepsake-note>div>p:not(.keepsake-kicker){font-size:12px}
  .keepsake-faq{padding-top:0}
  .keepsakes-footer{padding:34px 5%;gap:23px}
  .keepsakes-footer>.wordmark{flex-basis:100%;font-size:31px}
  .keepsakes-footer>p{font-size:10px}
  .keepsakes-footer nav{margin-left:auto;font-size:9px;gap:15px 20px}
  .keepsake-viewer-bar{padding:9px 14px;gap:15px}
  .keepsake-viewer-bar h2{font-size:11px}
  .keepsake-viewer-bar button{gap:9px;font-size:9px}
  .keepsake-viewer-image{padding:14px 8px}
  .keepsake-viewer-image img{max-height:58dvh}
  .keepsake-viewer-navigation{padding-inline:15px}
  .keepsake-viewer-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding-inline:15px}
  .keepsake-viewer-controls button{min-height:44px}
  .keepsake-viewer>p{font-size:9px}
}
@media(max-width:390px){.keepsakes-header .wordmark,.keepsakes-footer>.wordmark{font-size:28px}.keepsakes-header nav{gap:8px;font-size:9px}.keepsakes-announcement{font-size:8px}.keepsake-book-top{font-size:7px}.keepsake-gallery{padding-inline:10px}.keepsake-view-controls{gap:4px}.keepsake-view-controls button{font-size:7px}.keepsake-view-controls button img{width:29px;height:41px}.keepsake-facts{gap:24px}.keepsake-facts p{gap:9px}.keepsake-facts span{font-size:9px}.keepsakes-footer nav{gap:15px}}
@media(prefers-reduced-motion:reduce){.keepsake-image-link>img{transition:none}}

/* Put materials beside the guided content, where readers compare the editions. */
.keepsake-materials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
.keepsake-materials dt{font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--keepsake-muted);margin-bottom:5px}
.keepsake-materials dd{font-size:11px;line-height:1.6;margin:0;color:var(--book-accent)}
.keepsake-format-note{font-size:11px;line-height:1.8;max-width:460px;margin:0 0 15px;color:#4f5549}
@media(max-width:420px){.keepsake-materials{grid-template-columns:1fr;gap:7px}.keepsake-materials>div{display:grid;grid-template-columns:92px 1fr;gap:10px}.keepsake-materials dt{margin:0;align-self:center}}
