.birthday-page-main{min-width:0}
.birthday-page .intro-copy h1{overflow-wrap:anywhere}
.birthday-page .campaign-image::after{display:none}
.birthday-hero-art{display:block;width:100%;height:auto;max-height:min(420px,48vh);min-height:0;object-fit:contain;flex:1 1 0;margin-top:18px}
.birthday-page main:has(#song-results:not([hidden])) .birthday-hero-art{display:none}
.birthday-guide{--ink:#191b30;--muted:#596174;--accent:#5138c2;max-width:1160px;margin:0 auto;padding:44px 24px 64px;color:var(--ink);border-top:1px solid #d9dfe9;font-size:16px;line-height:1.65}
.birthday-guide :is(h2,h3,p,li,summary){overflow-wrap:anywhere}
.birthday-guide h2{font-size:clamp(22px,2.2vw,29px);line-height:1.25;text-wrap:balance;margin:0 0 16px;max-width:40ch}
.birthday-guide h3{font-size:17px;line-height:1.4;margin:0 0 6px}
.birthday-guide p{max-width:72ch;margin:0;color:var(--muted)}
.birthday-guide a{color:var(--accent);text-underline-offset:4px;text-decoration-thickness:1px}
.birthday-guide a:hover{text-decoration-thickness:2px}
.birthday-breadcrumb{font-size:13px;margin-bottom:36px;color:var(--muted)}
.birthday-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;padding:0;margin:0}
.birthday-breadcrumb li+li::before{content:"/";margin-right:12px;color:var(--muted)}
.birthday-guide-intro{margin-bottom:44px}
.birthday-guide-method{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;margin-bottom:44px}
.birthday-steps{padding-left:24px;margin:0}
.birthday-steps li{padding-left:6px;margin-bottom:24px}
.birthday-steps li:last-child{margin-bottom:0}
.birthday-steps li::marker{color:var(--accent);font-weight:700}
.birthday-examples{list-style:none;padding:0;margin:0}
.birthday-example{padding:18px 0;border-bottom:1px solid #d9dfe9;color:var(--muted)}
.birthday-example:first-child{padding-top:0}
.birthday-writing-tips{margin-bottom:44px}
.birthday-faq{margin-bottom:40px;max-width:82ch}
.birthday-faq details{border-bottom:1px solid #d9dfe9}
.birthday-faq summary{padding:18px 4px;cursor:pointer;font-weight:600;line-height:1.5}
.birthday-faq summary::marker{color:var(--accent)}
.birthday-faq details p{padding:0 4px 20px}
.birthday-related ul{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0;margin:0}
.birthday-related a{display:inline-block;padding:7px 0}
@media(min-width:761px){
  .birthday-page .campaign-main{padding-top:64px}
}
@media(max-width:760px){
  .birthday-hero-art{display:none}
  .birthday-guide{font-size:15px;padding:30px 16px 48px}
  .birthday-guide h2{font-size:23px;margin-bottom:14px}
  .birthday-breadcrumb{font-size:12px;margin-bottom:28px}
  .birthday-guide-intro,.birthday-writing-tips{margin-bottom:32px}
  .birthday-guide-method{grid-template-columns:minmax(0,1fr);gap:32px;margin-bottom:32px}
  .birthday-related ul{display:block}
  .birthday-faq summary{padding-block:16px}
}
