/* A shared rhythm inspired by the guide's character stories. */
.baby-guide-page .chapter-intro{font-size:17px;line-height:1.85;color:var(--ink);margin:0 0 24px}
.baby-guide-page .chapter-label{display:block;font:600 11px/1.5 var(--sans);letter-spacing:1.3px;text-transform:uppercase;color:#705582;margin-bottom:8px}
.baby-guide-page .chapter-beats{display:grid;gap:24px;margin:24px 0}
.baby-guide-page .chapter-beats>section,.baby-guide-page .chapter-beat{border-left:2px solid #c6b3d2;padding-left:20px;min-width:0}
.baby-guide-page .chapter-beats h3,.baby-guide-page .chapter-beats h4,.baby-guide-page .chapter-beat h3,.baby-guide-page .chapter-beat h4{font:400 28px/1.15 var(--serif);letter-spacing:-.3px;margin:0 0 11px;color:var(--ink)}
.baby-guide-page .chapter-beats p,.baby-guide-page .chapter-beat p{font-size:15px;line-height:1.8;margin:0 0 12px}
.baby-guide-page .chapter-beats p:last-child,.baby-guide-page .chapter-beat p:last-child{margin:0}
.baby-guide-page .chapter-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:32px 0}
.baby-guide-page .chapter-inline-link{display:inline-block;font-size:12px;line-height:1.7;margin-top:12px;color:var(--ink);text-underline-offset:4px}
.baby-guide-page .chapter-memory{margin:0 8px 0 0;min-width:0}
.baby-guide-page .chapter-memory img{width:100%;height:auto;display:block;border-radius:4px;box-shadow:8px 8px 0 #e3d7ed}
.baby-guide-page .chapter-memory figcaption{font:italic 19px/1.4 var(--serif);color:var(--purple);text-align:center;margin-top:20px}
.baby-guide-page .baby-photo-story{grid-template-columns:minmax(0,1fr) minmax(0,230px);gap:34px;align-items:start}
.baby-guide-page .baby-photo-story .baby-photo-story-copy{min-width:0}
/* Age advice is a story with small subtitles, not another large tinted panel. */
.baby-guide-page .age-tabs{margin:26px 0 28px}
.baby-guide-page .age-panel{background:transparent;border:0;padding:0;min-width:0}
.baby-guide-page .age-panel-heading{padding:0;border:0;margin:0 0 22px}
.baby-guide-page .age-panel-heading .age-label{display:block;font-size:11px;margin-bottom:8px}
.baby-guide-page .age-panel-heading h3{font:400 34px/1.15 var(--serif);max-width:640px;margin:0}
.baby-guide-page .age-stage-story{min-width:0}
.baby-guide-page .age-stage-with-photo{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:34px;align-items:start}
.baby-guide-page .age-memory{margin:0 8px 0 0;max-width:none}
.baby-guide-page .age-memory img{width:100%;height:auto;box-shadow:8px 8px 0 #e3d7ed;border-radius:4px;display:block}
.baby-guide-page .age-memory figcaption{font:italic 19px/1.4 var(--serif);color:var(--purple);margin-top:20px;text-align:center}
.baby-guide-page .age-closing-grid{grid-template-columns:minmax(0,1fr);border:0;gap:28px;margin-top:30px}
.baby-guide-page .age-closing-grid .chapter-beat p{font-size:14px}
.baby-guide-page a.age-rides-link{margin:12px 0 0;gap:25px}
.baby-guide-page .age-rides-link small{display:block;color:#e4eaf0;font-size:11px;font-weight:400;margin-top:3px}
/* The checklist keeps every item, grouped into small, readable sets. */
.baby-guide-page .packing-list{background:#f3eef5;padding:26px;border:1px solid #dfd3e6;margin-top:28px}
.baby-guide-page .packing-heading{align-items:flex-start;margin-bottom:25px}
.baby-guide-page .packing-heading h3{font:400 30px/1.15 var(--serif);margin:0 0 12px}
.baby-guide-page .packing-heading #packing-count{font-size:12px;white-space:nowrap;padding-top:4px}
.baby-guide-page .packing-groups{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px}
.baby-guide-page .packing-group{min-width:0;padding:0;border:0;margin:0}
.baby-guide-page .packing-group legend{font:400 25px/1.2 var(--serif);color:var(--ink);padding:0;margin:0 0 13px}
.baby-guide-page .packing-group .pack-item{font-size:13px;line-height:1.7;align-items:flex-start;padding:11px 0;border-bottom:1px solid #ded4e4}
.baby-guide-page .packing-group .pack-item input{flex:none;margin-top:3px}
.baby-guide-page .packing-actions{margin-top:24px}
.baby-guide-page .chapter-beat .packing-tip-heading{font-size:28px}
.baby-guide-page .chapter-beat .source-links{font-size:12px;line-height:1.7}
/* Keep the carousels, with a personal photo and clear introduction. */
.baby-guide-page .rides-story{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:34px;align-items:start;margin:28px 0 32px}
.baby-guide-page .rides-story .small-note{margin-bottom:0}
.baby-guide-page .parent-ride-switch{background:transparent;border:0;border-top:1px solid #d4c6de;padding:30px 0 0;margin:32px 0}
.baby-guide-page .parent-ride-switch>h3{font:400 34px/1.15 var(--serif);margin-bottom:20px}
.baby-guide-page .switch-spotlights{gap:28px;margin:25px 0}
.baby-guide-page .switch-spotlights article{border-top:0;border-left:2px solid #c6b3d2;padding:0 0 0 20px}
.baby-guide-page .switch-spotlights h4{font:400 27px/1.2 var(--serif)}
.baby-guide-page .boarding-chapter{border-top:1px solid var(--line);padding-top:30px;margin-top:34px}
.baby-guide-page .boarding-chapter>h3{font:400 34px/1.15 var(--serif)}
.baby-guide-page .boarding-chapter .chapter-pair{margin-top:26px}
.baby-guide-page .boarding-chapter .small-note{margin-top:14px}
@media(max-width:1000px){
 .baby-guide-page .age-stage-with-photo,.baby-guide-page .rides-story,.baby-guide-page .baby-photo-story{grid-template-columns:minmax(0,1fr) 190px;gap:25px}
 .baby-guide-page .packing-groups{gap:24px}
}
@media(max-width:650px){
 .baby-guide-page .chapter-intro{font-size:16px}
 .baby-guide-page .chapter-pair,.baby-guide-page .age-closing-grid{grid-template-columns:1fr;gap:25px}
 .baby-guide-page .chapter-beats>section,.baby-guide-page .chapter-beat{padding-left:17px}
 .baby-guide-page .age-stage-with-photo,.baby-guide-page .rides-story,.baby-guide-page .baby-photo-story{grid-template-columns:1fr;gap:25px}
 .baby-guide-page .age-memory,.baby-guide-page .chapter-memory{width:min(100% - 8px,260px);justify-self:center;margin:0 8px 0 0}
 .baby-guide-page .age-panel-heading h3{font-size:31px}
 .baby-guide-page .packing-list{padding:20px}
 .baby-guide-page .packing-groups{grid-template-columns:1fr;gap:25px}
 .baby-guide-page .packing-heading{display:block}
 .baby-guide-page .packing-heading #packing-count{display:block;padding-top:15px}
 .baby-guide-page .packing-group .pack-item{font-size:14px}
 .baby-guide-page .switch-spotlights{grid-template-columns:1fr;gap:25px}
 .baby-guide-page .rides-story{margin-top:24px}
 .baby-guide-page a.age-rides-link{width:100%}
}

/* Photographs make each carousel suggestion easy to recognise. */
.baby-guide-page .ride-card-photo{margin:-22px -22px 18px;overflow:hidden;border-radius:2px 2px 0 0}
.baby-guide-page .ride-card-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;background:#ede5f1}
.baby-guide-page .ride-card-photo figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 12px;font:400 10px/1.55 var(--sans);color:var(--muted)}
.baby-guide-page .ride-card-photo figcaption span{flex-basis:100%}
.baby-guide-page .ride-card-photo figcaption a{font:400 10px/1.55 var(--sans);margin:0 0 0 auto;color:var(--muted)}
.baby-guide-page .ride-photo-credits{padding-top:54px;padding-bottom:70px;max-width:1000px}
.baby-guide-page .ride-photo-credits>p{max-width:760px}
.baby-guide-page .ride-credit-list{margin-top:40px}
.baby-guide-page .ride-credit-list article{display:grid;grid-template-columns:170px minmax(0,1fr);gap:24px;padding:24px 0;border-top:1px solid #d7c7df;scroll-margin-top:100px}
.baby-guide-page .ride-credit-list img{width:170px;height:120px;object-fit:contain;background:#eee7f2}
.baby-guide-page .ride-credit-list h2{font:500 27px/1.2 var(--serif);margin:0 0 10px}
.baby-guide-page .ride-credit-list p{font:400 13px/1.8 var(--sans);margin:0;overflow-wrap:anywhere}
@media(max-width:650px){
 .baby-guide-page .ride-card-photo{margin:-20px -20px 18px}
 .baby-guide-page .ride-credit-list article{grid-template-columns:1fr;gap:14px}
}

/* User's own two Buzz photos and the Pirates photo in additional rides. */
.baby-guide-page .ride-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#e6deeb}
.baby-guide-page .ride-card-photo .ride-photo-pair img{aspect-ratio:9/16;object-fit:contain}
.baby-guide-page .ride-more-family li.ride-extra-photo{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:24px;align-items:start}
.baby-guide-page .ride-extra-photo .ride-card-photo{margin:0}
.baby-guide-page .ride-extra-photo .ride-card-photo img{aspect-ratio:3/4}
@media(max-width:550px){.baby-guide-page .ride-more-family li.ride-extra-photo{grid-template-columns:1fr}.baby-guide-page .ride-extra-photo .ride-card-photo{max-width:270px}}
