.birthday-hero{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;padding-top:40px;padding-bottom:64px}
.birthday-hero-visual{position:relative;align-self:stretch;min-height:520px;overflow:hidden;background:#181818}
.birthday-hero-visual img{width:100%;height:100%;object-fit:cover;object-position:40% center}
.birthday-photo-label{position:absolute;bottom:0;left:0;right:0;background:var(--yellow);color:#080808;padding:16px 20px;font-size:.8rem;font-weight:700;letter-spacing:.07em;text-align:center}
.birthday-hero-copy .eyebrow{margin-top:24px;margin-bottom:16px}
.birthday-hero h1{font-size:clamp(3rem,5.2vw,5.4rem);line-height:1.02}
.birthday-hero h1 span{color:var(--yellow)}
.birthday-facts{display:flex;flex-wrap:wrap;gap:10px 20px;margin:24px 0;font-size:.9375rem;font-weight:600}
.birthday-facts span{padding-left:13px;border-left:2px solid var(--yellow)}
.birthday-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:32px}
.birthday-section-heading h2{margin-bottom:0}
.birthday-section-heading>p{color:#bbb;max-width:360px;margin:0;line-height:1.7}
.birthday-packs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.birthday-pack{min-width:0;display:flex;flex-direction:column;padding:28px;border:1px solid #414141;background:#131313;border-top:3px solid #666}
.birthday-pack.pack-sasuke{border-top-color:var(--yellow)}
.birthday-pack.pack-naruto{border-color:#746026;border-top-color:var(--yellow);background:#1b180f}
.pack-kicker{font-size:.8125rem;color:var(--yellow);min-height:2.8em;line-height:1.4;margin-bottom:10px}
.birthday-pack h3{font:700 2.4rem/1.1 var(--display)}
.pack-price{font:700 4.5rem/1.1 var(--display);margin:22px 0 6px}
.pack-price span{font:600 .9375rem/1.4 var(--body);color:#ccc}
.pack-capacity{font-weight:600;margin-bottom:10px}
.pack-duration{font-size:.9375rem;color:#c3c3c3;min-height:3em;margin:0}
.birthday-pack ul{padding:24px 0 10px;margin:20px 0 0;border-top:1px solid #414141;list-style:none;flex:1}
.birthday-pack li{padding:0 0 14px 24px;position:relative;font-size:.9375rem;line-height:1.55;color:#ddd}
.birthday-pack li::before{content:'✓';position:absolute;left:0;color:var(--yellow);font-weight:700}
.pack-bottom>p{font-size:.8125rem;color:#bbb;margin-bottom:14px}
.pack-bottom .button{width:100%;font-size:.9375rem;padding:14px 10px}
.birthday-price-note{padding:22px 24px;margin-top:24px;background:#151515;border-left:3px solid var(--yellow)}
.birthday-price-note p{margin:8px 0 0;color:#c3c3c3;line-height:1.65;font-size:.9375rem}
.birthday-faq .faq-list{max-width:920px}
.detail-birthday .detail-contact .detail-micro{font-size:.875rem;margin:16px 0 0}
@media(max-width:1000px){.birthday-hero{gap:28px}.birthday-pack{padding:24px 20px}.birthday-packs{gap:16px}.birthday-section-heading{display:block}.birthday-section-heading>p{margin-top:20px;max-width:none}}
@media(max-width:760px){.birthday-hero{grid-template-columns:1fr;padding-top:22px;padding-bottom:42px;gap:8px}.birthday-hero-visual{min-height:0;aspect-ratio:4/3}.birthday-hero-visual img{object-position:40% center}.birthday-photo-label{padding:11px;font-size:.68rem}.birthday-hero-copy .detail-back{margin-top:10px}.birthday-hero-copy .eyebrow{margin-top:16px}.birthday-hero h1{font-size:clamp(2.9rem,10vw,4.2rem)}.birthday-hero .button{width:100%;font-size:1rem;padding:16px}.birthday-packs{grid-template-columns:1fr;gap:22px}.birthday-pack{padding:26px}.pack-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 15px}.pack-kicker{grid-column:1/-1;min-height:0;margin:0 0 6px}.birthday-pack h3{font-size:2.25rem;align-self:center}.pack-price{font-size:3.4rem;margin:0;white-space:nowrap}.pack-capacity,.pack-duration{grid-column:1/-1;margin:0;min-height:0}.birthday-pack ul{margin-top:22px}.birthday-price-note{padding:20px}.birthday-facts{font-size:.875rem;gap:14px}.detail-birthday .detail-header nav{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
