.peter-panel{color:#000;max-width:760px}
.peter-panel a{color:#000}
.peter-panel .site-trail,.peter-panel .site-trail [aria-current]{color:#000}
.peter-eyebrow{font:700 12px/1.5 Georgia,serif;text-align:center;letter-spacing:.09em;text-transform:uppercase;margin:16px 0 24px}
.peter-hero{display:grid;grid-template-columns:minmax(0,308fr) minmax(0,324fr);gap:20px 25px;margin:12px auto 24px;align-items:center}
.peter-hero>img{display:block;width:100%;max-width:308px;height:auto;justify-self:center}
.peter-hero h1{margin:0;min-width:0}
.peter-hero h1 img{width:100%;max-width:324px;height:auto;filter:drop-shadow(1px 2px 1px #32180b)}
.peter-hero-title{min-width:0}
.peter-subtitle{text-align:center;font:700 1rem/1.5 Georgia,serif;margin:14px 0 0}
#visit-story{max-width:740px;margin:auto;overflow-wrap:break-word}
#visit-story p{margin:0 0 16px}
#visit-story h2{font:700 26px/1.3 Georgia,serif;margin:28px 0 18px;text-align:center}
#visit-story .peter-archive-note{font-style:italic;border-bottom:1px solid #59341680;padding-bottom:16px;margin-bottom:24px}
.peter-memorial{max-width:620px;padding:18px 24px;margin:0 auto 28px;border-block:1px solid #67431e;background:#f5ddba;text-align:center}
#visit-story .peter-memorial .peter-eyebrow{font:700 11px/1.5 Georgia,serif;margin:0 0 6px}
#visit-story .peter-memorial h2{font:700 23px/1.4 Georgia,serif;margin:0 0 8px}
.peter-memorial h2 span{white-space:nowrap;font:400 1rem/1.5 Georgia,serif;display:inline-block;margin-left:8px}
#visit-story .peter-memorial>p:last-child{margin:0}
.peter-photo{width:100%;margin:16px auto}
.peter-image img{display:block;width:100%;height:auto}
.peter-image{display:block;text-decoration:none;cursor:zoom-in}
.peter-photo figcaption{font:italic 14px/1.5 Georgia,serif;text-align:center;margin-top:8px}
.peter-walk-wrap{display:flow-root}
.peter-walk-wrap .peter-camp-photo{float:right;width:46%;margin:0 0 12px 18px}
.peter-hall-photos{margin:6px auto 12px}
/* Page 3: recover the original connected two-column photo montage. */
.peter-tour-scrapbook{display:grid;grid-template-columns:minmax(0,226fr) minmax(0,404fr);max-width:630px;margin:20px auto 0;align-items:start}
.peter-tour-left{position:relative;aspect-ratio:226/484;min-width:0;z-index:2}
.peter-tour-cutout{position:absolute}
.tour-props{z-index:4}.tour-friends{z-index:3}.tour-tower{z-index:2}.tour-visitor{z-index:1}
.peter-tour-right{min-width:0}
.peter-tour-right .peter-photo{margin:0}
#visit-story .peter-tour-right .peter-courtyard-copy{padding-left:18.316832%;margin:8px 0}
.peter-tour-right .peter-courtyard-photo{margin-left:4px;width:calc(100% - 4px)}
#visit-story .peter-handprint-copy{text-align:center;margin:6px 0}
.peter-handprints{width:calc(100% - 22px);margin:0 0 0 22px}
/* Page 4: text and squirrels at left; the soundstage photograph at right. */
.peter-stage-grid{display:grid;grid-template-columns:minmax(0,297fr) minmax(0,320fr);gap:8px 16px;max-width:633px;margin:0 auto 16px;align-items:end}
.peter-stage-copy{grid-column:1;grid-row:1}
#visit-story .peter-stage-copy p{margin-bottom:0}
.peter-stage-squirrels{grid-column:1;grid-row:2;margin:0}
.peter-stage-door{grid-column:2;grid-row:1/3;margin:0}
.peter-stage-mobile,.peter-finale-mobile{display:none}
.peter-archives-photos{margin:10px auto 12px}
/* Page 5: reserve room for live text, then overlap Roy's photograph safely. */
.peter-finale-grid{display:grid;grid-template-columns:minmax(0,216fr) minmax(0,404fr);max-width:620px;margin:0 auto 12px;align-items:start}
.peter-arrival-copy{grid-column:1;grid-row:1;padding:0 16px 64px 0}
#visit-story .peter-arrival-copy p:last-child{margin-bottom:0}
.peter-finale-partners{grid-column:2;grid-row:1;align-self:end;margin:0}
.peter-finale-roy{grid-column:1;grid-row:2;width:148.148148%;margin:-64px 0 0;z-index:2}
.peter-finale-rufus{grid-column:2;grid-row:2;padding:12px 0 0 120px;min-width:0;display:flow-root}
.peter-chat-photo{float:right;width:113px;margin:0 0 0 10px}
.peter-message{margin-top:12px}
.peter-message-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr) minmax(0,.9fr);gap:16px;align-items:start}
.peter-video-link{display:block;width:min(100%,159px);margin:0 auto;text-align:center;background:#f5ddba;border:1px solid #67431e;font:700 1rem/1.5 Georgia,serif}
.peter-video-link img{display:block;width:100%;height:auto}
.peter-video-link>span:not(.sr-only){display:block;padding:8px 4px}
#visit-story .peter-media-note{text-align:center;font:italic 14px/1.5 Georgia,serif;margin-top:-14px}
.peter-audio-toggle,.peter-audio-close{display:block;min-height:44px;padding:8px 6px;margin:8px auto;border:0;background:transparent;color:#000;font:1rem/1.5 Georgia,serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer;max-width:100%}
.peter-audio-player{box-sizing:border-box;width:min(100%,400px);padding:14px;background:#f5ddba;border:1px solid #67431e;text-align:center;margin:12px auto}
#visit-story .peter-audio-player p{margin:0 0 10px}
.peter-audio-player audio{display:block;width:100%}
.peter-audio-close{margin-bottom:0}
.peter-demo{border-top:1px solid #59341680;margin-top:16px;padding-top:4px}
.peter-photo-note{text-align:right;margin:12px 0 0}
.peter-viewer,.peter-video-player{width:min(94vw,760px);max-height:94dvh;overflow:auto;background:#f5ddba;color:#000;border:2px solid #67431e;padding:16px}
.peter-viewer::backdrop,.peter-video-player::backdrop{background:#000d}
.peter-dialog-heading{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:14px}
.peter-dialog-heading h2{font:700 22px/1.4 Georgia,serif;margin:0}
.peter-dialog-heading form{margin:0;flex:none}
.peter-dialog-heading button{font:700 1rem/1.4 Georgia,serif;min-height:44px;padding:8px 12px;background:#fff0d3;color:#000;border:1px solid #67431e;cursor:pointer}
.peter-image-pan{max-height:70dvh;overflow:auto}
.peter-image-pan img{display:block;max-width:100%;width:auto;height:auto;margin:auto}
#image-viewer-caption{font:1rem/1.5 Georgia,serif;margin:14px 0 0}
.peter-video-player{width:min(94vw,400px)}
.peter-video-player video{display:block;width:100%;height:auto;max-height:72dvh;object-fit:contain;background:#000}
body.peter-dialog-open{overflow:hidden}
.peter-footer{border-top:1px solid #59341680;margin-top:24px;padding-top:16px}
.peter-footer .disclaimer{font:700 11px/1.5 Arial,sans-serif;margin:14px auto 0;max-width:650px}
.peter-references{font:14px/1.5 Georgia,serif;margin:0}
.peter-footer .peter-archive-note{font:italic 14px/1.6 Georgia,serif;margin:0 0 12px;text-shadow:none}
@media(max-width:680px){
 .peter-eyebrow{font-size:11px;margin-bottom:20px}
 .peter-hero{gap:16px 14px}
 .peter-hero-title{display:contents}
 .peter-hero-title h1{grid-column:2;grid-row:1}
 .peter-subtitle{grid-column:1/-1;grid-row:2;font-size:1rem;margin:0}
 .peter-memorial{padding:16px 14px}
 .peter-memorial h2 span{display:block;margin:2px 0 0}
 .peter-walk-wrap .peter-camp-photo{width:47%;margin-left:12px}
 .peter-stage-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .peter-stage-desktop{display:none}
 .peter-stage-mobile{display:block;grid-column:1;grid-row:2;margin:0 auto}
 .peter-finale-grid{grid-template-columns:minmax(0,1fr)}
 .peter-arrival-copy{padding:0;grid-column:1;grid-row:1}
 .peter-finale-partners,.peter-finale-roy{display:none}
 .peter-finale-mobile{display:block;grid-column:1;grid-row:2;margin:12px auto 16px}
 .peter-finale-rufus{grid-column:1;grid-row:3;padding:0}
 .peter-message-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .peter-message-grid .peter-video-link{justify-self:center}
 #visit-story h2{font-size:23px}
 .peter-dialog-heading h2{font-size:19px}
 .peter-dialog-heading{gap:10px}
 .peter-viewer,.peter-video-player{padding:10px}
}
@media(forced-colors:active){.peter-memorial,.peter-audio-player,.peter-video-link,.peter-viewer,.peter-video-player{background:Canvas;color:CanvasText;border-color:CanvasText}}
