.walk-page .intro{max-width:1180px;text-align:left;display:grid;grid-template-columns:minmax(0,640px) minmax(180px,1fr);column-gap:60px;padding:38px 0 20px;width:calc(100% - 40px)}
.walk-page .intro>.eyebrow,.walk-page .intro>h1,.walk-page .intro>#walk-intro{grid-column:1;margin-left:0;margin-right:0;max-width:640px}.walk-page .intro>.progress{grid-column:2;grid-row:1/4;align-self:center;width:100%;max-width:280px;margin:0 0 0 auto}.walk-column{max-width:1180px}
.walk-frame{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);background:white;border:1px solid #dfe3d9;border-radius:12px;padding:14px;gap:14px;min-width:0;align-items:stretch}.walk-visual{min-width:0}.walk-frame .scene{width:100%;max-width:none;margin:0;aspect-ratio:3/2;isolation:isolate}.walk-frame .scene>img{transform-origin:0 0;transition:transform 650ms cubic-bezier(.22,.65,.3,1);will-change:transform}.walk-frame .pin{transition:left 650ms cubic-bezier(.22,.65,.3,1),top 650ms cubic-bezier(.22,.65,.3,1);z-index:2}.walk-frame .pin[aria-pressed=true]{background:#a85e32}.walk-frame .pin[hidden]{display:none}
.walk-frame .stop-buttons{max-width:none;margin:14px 0 0;padding:0;justify-content:flex-start;gap:8px}.walk-frame .stop-buttons button{font-size:12px;padding:10px 12px;line-height:1.4}.walk-frame .visit{display:block;margin:0;width:100%;max-width:none;border:0;border-radius:0;background:white;overflow:visible}.walk-frame .story{height:100%;padding:12px 14px;min-width:0}.walk-frame .story h2{font-size:27px}.walk-frame .controls{gap:8px;flex-wrap:wrap;align-content:end}.walk-frame .controls .btn{padding:12px;font-size:13px}.scene-tools{position:absolute;bottom:12px;right:12px;display:flex;gap:7px;z-index:3}.scene-tools button,.scene-lightbox button{border:1px solid #a5b8ac;background:#fffdf8;color:#244f4c;border-radius:20px;padding:10px 13px;font:12px Arial;cursor:pointer;box-shadow:0 2px 8px #0002}.scene-tools button[hidden]{display:none}.walk-column .also-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.walk-column .also-grid>.also-card:last-child:nth-child(odd){grid-column:auto}.walk-column .also-grid>.also-card:last-child:nth-child(3n+1){grid-column:1/-1}
.scene-lightbox{border:0;background:transparent;padding:0;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;overflow:hidden}.scene-lightbox::backdrop{background:#081918ed}.scene-lightbox .lightbox-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:60px 20px 20px;pointer-events:none}.scene-lightbox img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;aspect-ratio:3/2;pointer-events:auto}.scene-lightbox button{position:absolute;top:15px;right:20px;z-index:1;font-size:16px;padding:12px 22px}.scene-lightbox[open]{display:block}
@media(max-width:899px){.walk-page .intro{display:block;width:calc(100% - 28px);padding:28px 0 12px}.walk-page .intro>.progress{max-width:none;margin:24px 0 0}.walk-column{width:calc(100% - 28px)}.walk-frame{grid-template-columns:minmax(0,1fr);padding:14px;gap:20px}.walk-frame .stop-buttons{flex-wrap:nowrap;overflow-x:auto;padding:3px 0 12px;scroll-padding:0 18px;mask-image:linear-gradient(to right,#000 calc(100% - 20px),transparent);-webkit-overflow-scrolling:touch}.walk-frame .stop-buttons button{flex:0 0 auto;white-space:nowrap;max-width:85%;overflow:hidden;text-overflow:ellipsis}.walk-frame .story{padding:0 6px 10px}.walk-column .also-grid{grid-template-columns:1fr}.walk-column .also-grid>.also-card{grid-column:1/-1}.scene-tools{right:8px;bottom:8px}.scene-tools button{font-size:11px;padding:9px 10px}}
@media(prefers-reduced-motion:reduce){.walk-frame .scene>img,.walk-frame .pin{transition:none!important}}
.walk-frame .also-pin{position:absolute;z-index:2;transform:translate(-50%,-50%);width:18px;height:18px;padding:0;border:2px solid #244f4c;border-radius:50%;background:#fff;box-shadow:0 1px 5px #0005;cursor:pointer;transition:left 650ms cubic-bezier(.22,.65,.3,1),top 650ms cubic-bezier(.22,.65,.3,1)}.walk-frame .also-pin::before{content:"";position:absolute;inset:-9px;border-radius:50%}.walk-frame .also-pin[hidden]{display:none}.walk-frame .also-pin[aria-pressed=true]{border-color:#a85e32;box-shadow:0 0 0 3px #fff9}.walk-marker-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:14px;font-size:11px;color:#526a63}.walk-marker-legend>span{display:inline-flex;align-items:center;gap:8px}.walk-marker-dot,.also-marker-dot{display:inline-block;width:14px;height:14px;border:2px solid #244f4c;border-radius:50%;flex:none}.walk-marker-dot{background:#244f4c}.also-marker-dot{background:white}.on-painting{display:inline-block;font-size:10px;color:#315d52;background:#e5eee6;border-radius:12px;padding:5px 9px;margin-bottom:13px}.painting-card{cursor:pointer}.painting-card:hover{border-color:#779b8a}.painting-card:focus-visible{outline:3px solid #bc793d;outline-offset:4px}@media(prefers-reduced-motion:reduce){.walk-frame .also-pin{transition:none!important}}
.walk-frame .controls>[hidden]{display:none}.walk-frame .controls:has(#back[hidden]){justify-content:flex-end}
.walk-frame .pin{width:28px;height:28px;font-size:12px}.walk-frame .also-pin{width:14px;height:14px;border-width:1px}.walk-frame .scene:not(.show-extra-places) .also-pin{display:none}.extra-places-toggle{position:absolute;top:12px;left:12px;z-index:4;padding:9px 12px;border:1px solid #a5b8ac;border-radius:20px;background:#fffdf8;color:#244f4c;font:12px Arial;box-shadow:0 2px 8px #0002;cursor:pointer}.more-places{margin:15px 0 0;font-size:12px;line-height:2;color:#526a63}.more-title{font-weight:bold;margin-right:5px}.more-places button{padding:4px 2px;background:none;border:0;border-radius:3px;color:#244f4c;font:inherit;cursor:pointer;text-align:left}.more-places button:hover,.more-places button[aria-pressed=true]{text-decoration:underline;text-underline-offset:3px}.more-dot{padding:0 4px;color:#8a9d91}.walk-frame .pin::after,.walk-frame .also-pin::after{content:attr(data-place-name);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);width:max-content;max-width:165px;padding:7px 9px;background:#fffdf8;color:#244f4c;border:1px solid #b7c7bd;border-radius:5px;font:11px/1.4 Arial;text-align:left;box-shadow:0 2px 8px #0002;opacity:0;visibility:hidden;pointer-events:none;z-index:8}.walk-frame .pin:hover,.walk-frame .pin:focus-visible,.walk-frame .also-pin:hover,.walk-frame .also-pin:focus-visible{z-index:7}.walk-frame .pin:hover::after,.walk-frame .pin:focus-visible::after,.walk-frame .also-pin:hover::after,.walk-frame .also-pin:focus-visible::after{opacity:1;visibility:visible}

.walk-frame [data-label-side="left"]::after{left:auto;right:calc(100% + 8px)}
/* Compact shared intro: progress belongs to the eyebrow row. */
.walk-page .intro{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;row-gap:0;padding:24px 0 0;max-width:1180px;width:calc(100% - 40px)}.walk-page .intro>.eyebrow{grid-column:1;grid-row:1;align-self:center;margin:0;line-height:1.5;max-width:none}.walk-page .intro>.progress{grid-column:2;grid-row:1;display:flex;align-items:center;gap:12px;align-self:center;margin:0;width:auto;max-width:none}.walk-page .intro>.progress p{margin:0;white-space:nowrap;font-size:12px;line-height:1.5}.walk-page .intro>.progress progress{width:110px;height:7px;display:block}.walk-page .intro>h1{grid-column:1/-1;grid-row:2;max-width:none;font-size:40px;line-height:1.15;margin:8px 0 10px}.walk-page .intro>#walk-intro{grid-column:1/-1;grid-row:3;max-width:820px;font-size:15px;line-height:1.65;margin:0}.walk-page .walk-column{margin-top:24px}@media(max-width:899px){.walk-page .intro{width:calc(100% - 28px);padding:24px 0 0;column-gap:10px}.walk-page .intro>h1{font-size:30px}.walk-page .intro>.eyebrow{font-size:9px;letter-spacing:1.5px}.walk-page .intro>.progress{gap:7px;max-width:none;margin:0}.walk-page .intro>.progress p{font-size:10px}.walk-page .intro>.progress progress{width:55px;height:6px}.walk-page .intro>#walk-intro{font-size:14px;line-height:1.65}}
/* One outer alignment for every walk section. */
.walk-page .intro,.walk-page .walk-column{width:calc(100% - 64px);max-width:1360px;margin-left:auto;margin-right:auto}.walk-page .intro>#walk-intro{max-width:none;width:100%}.walk-column>.campus-across-card{width:100%;margin:0}@media(max-width:699px){.walk-page .intro,.walk-page .walk-column{width:calc(100% - 28px)}}
/* Painting and controls share one bounded top row; browsing spans the frame below. */
.walk-frame{grid-template-columns:min(60%,calc((100svh - 300px)*1.5)) minmax(0,1fr);grid-template-rows:auto auto;align-items:stretch}.walk-frame .walk-visual{grid-column:1;grid-row:1}.walk-frame .visit{grid-column:2;grid-row:1;position:relative;min-height:0}.walk-frame .visit .story{position:absolute;inset:0;height:100%;min-height:0;padding:8px 14px 0;grid-template-rows:minmax(0,1fr) auto}.walk-frame .stop-sizer{display:none}.walk-frame #stop-content{min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding-right:6px}.walk-frame .visit .controls{margin-top:12px;min-height:52px;padding-bottom:0;align-content:end}.walk-bottom{grid-column:1/-1;grid-row:2;min-width:0}.walk-frame .walk-bottom .stop-buttons{margin-top:0}.walk-frame .walk-bottom .more-places{margin-top:10px}
@media(max-width:899px){.walk-frame{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto}.walk-frame .walk-visual{grid-column:1;grid-row:1}.walk-frame .visit{grid-column:1;grid-row:2}.walk-frame .visit .story{position:static;height:auto;padding:0 6px 10px}.walk-frame .stop-sizer{display:grid}.walk-frame #stop-content{overflow:visible;padding-right:0;scrollbar-gutter:auto}.walk-frame .visit .controls{min-height:60px}.walk-bottom{grid-column:1;grid-row:3}}
.walk-frame{grid-template-columns:min(60%,calc(var(--walk-height-limit,calc(100svh - 300px))*1.5)) minmax(0,1fr)}.more-places .extra-places-toggle{position:static;display:inline-flex;align-items:center;vertical-align:middle;margin:0 10px 0 0;padding:5px 9px;font-size:11px;border:1px solid #8ca79b;border-radius:14px;background:transparent;box-shadow:none}.walk-page .intro>.progress{min-height:18px}.walk-page #facts-title[hidden]{display:none}@media(max-width:899px){.walk-frame{grid-template-columns:minmax(0,1fr)}}
.walk-frame #details-scroll.has-more-details{-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - 28px),transparent 100%)}
