/* A personal children's album: paper spreads, taped pictures and readable activities. */
body.page-home.album-home .desk-page { max-width: 1120px; margin-inline: auto; }
body.page-home.album-home .sheet-section { padding-block: 30px; }
body.page-home.album-home #top { padding-top: 24px; padding-bottom: 36px; }
body.page-home.album-home .sheet--hero {
  padding: 48px 52px 40px; border-radius: 8px 24px 24px 8px;
  border-left: 14px solid #d5b793;
  background: repeating-linear-gradient(0deg,transparent 0 31px,rgba(117,154,174,.10) 31px 32px),#fff9e9;
  box-shadow: 4px 5px 0 #e9dcc1, 8px 10px 0 #f6edd9, 0 18px 36px #503c2426;
}
body.page-home.album-home .hero-grid { grid-template-columns: minmax(0,1fr) 290px; gap: 28px; align-items: center; }
body.page-home.album-home .hero-text { text-align: left; padding-top: 0; }
body.page-home.album-home .journal-welcome {
  display: inline-block; margin: 0 0 22px; padding: 5px 18px;
  background: #f0d777; color: #59432c; transform: rotate(-3deg);
  font-size: 26px !important; box-shadow: 1px 3px 0 #a0803b18;
}
body.page-home.album-home .journal-title { font-size: clamp(48px,5.6vw,76px) !important; line-height: 1.06; margin: 0 0 22px; }
body.page-home.album-home .album-overline { display: block; font-size: .48em; color: #5c493a; margin-bottom: 8px; }
body.page-home.album-home .hero-lead { max-width: 460px; font-size: 18px; line-height: 1.7; margin-bottom: 24px; }
body.page-home.album-home .hero-actions { justify-content: flex-start; gap: 12px; }
body.page-home.album-home .hero-actions .btn-tape {
  font-family: 'Jost',system-ui,sans-serif !important; font-size: 17px !important;
  font-weight: 500; padding: 13px 20px; min-height: 50px; white-space: nowrap;
}
body.page-home.album-home .btn-tape--sage { background: #d5e4bf; color: #32482c; box-shadow: 0 3px 0 #71845f30; }
body.page-home.album-home .album-signature {
  display: inline-block; padding-block: 12px; margin-top: 9px; color: #526246;
  font-family: 'Caveat',cursive; font-size: 25px; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px;
}
body.page-home.album-home .hero-capy { align-self: center; }
body.page-home.album-home .hero-capy .capy-frame { width: 280px; height: 300px; background: transparent; border: 0; box-shadow: none; }
body.page-home.album-home .hero-capy .capy-img { width: 260px; height: auto; max-width: 100%; filter: drop-shadow(4px 9px 3px #65492c20); }
body.page-home.album-home .hero-capy .speech-bubble { position: relative; inset: auto; width: 240px; max-width: 100%; margin: 0 auto; font-size: 25px !important; transform: rotate(3deg); }
body.page-home.album-home .section-on-wood { text-align: left; margin-bottom: 28px; }
body.page-home.album-home .section-label,
body.page-home.album-home .album-page-label { font-family: 'Jost',system-ui,sans-serif; font-size: 14px !important; letter-spacing: .07em; color: #645645; margin-bottom: 8px; }
body.page-home.album-home .section-title { font-size: clamp(34px,4vw,48px) !important; line-height: 1.15; }
body.page-home.album-home .scrapbook-cards { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px; }
body.page-home.album-home .album-card { border-radius: 5px 5px 12px 5px; padding: 14px 16px 22px; color: #453728; }
body.page-home.album-home .album-card:nth-child(1) { background: #fff6da; transform: rotate(-2deg); }
body.page-home.album-home .album-card:nth-child(2) { background: #edf2df; transform: rotate(1.5deg); }
body.page-home.album-home .album-card:nth-child(3) { background: #e7f1f6; transform: rotate(-1deg); }
body.page-home.album-home .album-card:nth-child(4) { background: #f9e5db; transform: rotate(2deg); }
body.page-home.album-home .album-card:hover { transform: translateY(-6px) rotate(0); }
body.page-home.album-home .album-card .gcard__pic { background: transparent; border: none; aspect-ratio: 1; }
body.page-home.album-home .album-card .card-title { font-size: 28px !important; line-height: 1.1; min-height: 2.2em; }
body.page-home.album-home .album-card .card-text { font-size: 16px; line-height: 1.6; }
body.page-home.album-home .album-card .card-link { font-size: 24px !important; }
body.page-home.album-home .album-bookmark { text-align: center; margin: 4px 16px 24px; font-size: 16px; line-height: 1.8; color: #514333; }
body.page-home.album-home .album-bookmark a { color: #844128; text-decoration: underline; text-underline-offset: 4px; }
body.page-home.album-home .album-how { max-width: 940px; margin: 0 auto 30px; padding: 30px 32px; background: #fffaf0; border-radius: 8px; box-shadow: 0 6px 16px #4f3d2012; }
body.page-home.album-home .album-how .section-label { display: none; }
body.page-home.album-home .album-how .section-title { font-size: 32px !important; }
body.page-home.album-home .album-how .how-grid { gap: 24px; }
body.page-home.album-home .album-how .how-step { background: transparent; box-shadow: none; border: 0; padding: 0; transform: none; text-align: left; }
body.page-home.album-home .album-how .how-step::before,
body.page-home.album-home .album-how .how-step::after { display: none; }
body.page-home.album-home .album-how .sketch-scrap { display: none; }
body.page-home.album-home .album-how .step-num { font-size: 34px !important; color: #987347; }
body.page-home.album-home .album-how .step-title { font-size: 25px !important; }
body.page-home.album-home .album-how .step-text { font-size: 16px; }
body.page-home.album-home #nashi-kraya { border-top: 2px dashed #99836755; margin: 30px auto 0; padding: 36px 16px 16px; }
body.page-home.album-home .map-top__label { margin: 8px 0 10px; font-size: 48px !important; }
body.page-home.album-home .map-top__soon { max-width: 460px; margin: 0 auto 24px; line-height: 1.6; }
body.page-home.album-home #authors { border-top: 2px dashed #99836755; margin-top: 36px; }
body.page-home.album-home .album-authors { display: grid; grid-template-columns: 260px minmax(0,1fr); gap: 36px; max-width: 940px; margin: auto; align-items: center; }
body.page-home.album-home .album-photo { margin: 0; padding: 12px 12px 18px; background: #fffaf1; transform: rotate(-4deg); box-shadow: 0 10px 22px #4b361d26; }
body.page-home.album-home .album-photo img { width: 100%; height: auto; display: block; }
body.page-home.album-home .album-photo figcaption { font-family: 'Caveat',cursive; text-align: center; font-size: 24px; margin-top: 8px; }
body.page-home.album-home .authors-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
body.page-home.album-home .author-card { padding: 20px; }
body.page-home.album-home .author-name { font-size: 34px !important; }
body.page-home.album-home .author-role { font-family: 'Jost',system-ui,sans-serif; font-size: 15px !important; line-height: 1.5; }
body.page-home.album-home .author-bio { font-size: 16px; }
body.page-home.album-home .site-feedback-inner { max-width: 760px; margin: auto; }
body.page-home.album-home .site-feedback-form .btn-primary { font-family: 'Jost',system-ui,sans-serif !important; font-size: 17px !important; text-transform: none; letter-spacing: 0; padding-inline: 26px; border-radius: 5px; }
@media (max-width: 960px) {
  body.page-home.album-home .hero-grid { grid-template-columns: minmax(0,1fr) 230px; }
  body.page-home.album-home .sheet--hero { padding: 36px 32px; }
  body.page-home.album-home .hero-capy .capy-frame { width: 220px; height: 260px; }
  body.page-home.album-home .scrapbook-cards { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
  body.page-home.album-home .album-card { display: grid; grid-template-columns: 100px minmax(0,1fr); column-gap: 12px; }
  body.page-home.album-home .album-card .gcard__pic { grid-column: 1; grid-row: 1 / 4; align-self: center; }
  body.page-home.album-home .album-card :is(.card-title,.card-text,.card-link) { grid-column: 2; }
  body.page-home.album-home .album-card .card-title { min-height: 0; }
  body.page-home.album-home .album-authors { grid-template-columns: 200px minmax(0,1fr); gap: 24px; }
  body.page-home.album-home .authors-grid { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  body.page-home.album-home .sheet-section { padding-block: 24px; }
  body.page-home.album-home .sheet--hero { padding: 26px 22px 18px; border-left-width: 7px; }
  body.page-home.album-home .hero-grid { grid-template-columns: minmax(0,1fr); gap: 10px; }
  body.page-home.album-home .journal-welcome { font-size: 23px !important; margin-bottom: 16px; padding-inline: 12px; }
  body.page-home.album-home .journal-title { font-size: 54px !important; margin-bottom: 16px; }
  body.page-home.album-home .hero-lead { font-size: 17px; line-height: 1.6; margin-bottom: 18px; }
  body.page-home.album-home .hero-actions .btn-tape { flex: 1 1 auto; padding: 12px; font-size: 16px !important; }
  body.page-home.album-home .album-signature { font-size: 22px; margin-top: 3px; }
  body.page-home.album-home .hero-capy { display: flex; justify-content: center; align-items: center; gap: 8px; min-width: 0; }
  body.page-home.album-home .hero-capy .speech-bubble { width: 175px; font-size: 22px !important; margin: 0; }
  body.page-home.album-home .hero-capy .capy-frame { width: 130px; height: 140px; flex-shrink: 0; }
  body.page-home.album-home .hero-capy .capy-img { width: 125px; }
  body.page-home.album-home .section-title { font-size: 36px !important; }
  body.page-home.album-home .scrapbook-cards { grid-template-columns: 1fr; gap: 22px; padding-inline: 5px; }
  body.page-home.album-home .album-card { grid-template-columns: 100px minmax(0,1fr); padding: 16px; }
  body.page-home.album-home .album-card .card-title { font-size: 28px !important; }
  body.page-home.album-home .album-how { padding: 24px; }
  body.page-home.album-home .album-how .how-grid { grid-template-columns: 1fr; gap: 18px; }
  body.page-home.album-home .album-how .how-step { display: grid; grid-template-columns: 34px minmax(0,1fr); column-gap: 10px; }
  body.page-home.album-home .album-how .step-num { grid-row: 1 / 3; }
  body.page-home.album-home .album-how :is(.step-title,.step-text) { grid-column: 2; margin-top: 0; }
  body.page-home.album-home .album-authors { grid-template-columns: 1fr; gap: 28px; }
  body.page-home.album-home .album-photo { max-width: 240px; justify-self: center; }
  body.page-home.album-home .authors-grid { grid-template-columns: 1fr; }
}
@media (max-width: 360px) {
  body.page-home.album-home .sheet--hero { padding-inline: 16px; }
  body.page-home.album-home .journal-title { font-size: 46px !important; }
  body.page-home.album-home .hero-capy .capy-frame { width: 100px; height: 120px; }
  body.page-home.album-home .hero-capy .speech-bubble { min-width: 0; width: 140px; font-size: 20px !important; }
  body.page-home.album-home .album-card { grid-template-columns: 75px minmax(0,1fr); padding-inline: 12px; }
}
