/* Shared photo / school page presentation. Scoped to preserve header, footer and blog. */
.jp-section{--jp-ink:#173c59;--jp-blue:#1674ac;--jp-line:#dce5ed;--jp-light:#eef5fa;max-width:1240px;width:calc(100% - 56px);margin:32px auto 55px;padding:30px;background:#f8fbfd;border-radius:18px;box-sizing:border-box;color:var(--jp-ink);font:17px/1.6 Arial,Helvetica,sans-serif}.jp-section *{box-sizing:border-box}.jp-section h1,.jp-section h2,.jp-section h3,.jp-section p,.jp-section figure{margin:0}.jp-section h1{color:var(--jp-ink);font-size:clamp(30px,4vw,44px);line-height:1.2;font-weight:700}.jp-section h2{color:var(--jp-ink);font-size:24px;line-height:1.4;font-weight:700}.jp-section p{color:#435b6d;font-size:17px;line-height:1.6;text-align:left}.jp-section a{color:#145f91;font:inherit}.jp-section button,.jp-section input{font:inherit}.jp-section .jp-page-heading{background:none;padding:0 0 24px;display:block}.jp-section .jp-eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;color:var(--jp-blue);margin-bottom:8px}.jp-section .jp-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--jp-line)}.jp-section .jp-tabs a{display:block;border:1px solid #c8d9e5;border-radius:30px;padding:8px 16px;text-decoration:none;background:#fff;font-size:14px;font-weight:700}.jp-section .jp-tabs a[aria-current=page]{color:#fff;background:var(--jp-ink);border-color:var(--jp-ink)}.jp-section .jp-tabs a:hover{border-color:var(--jp-blue)}.jp-section .jp-section-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:28px 0 18px}.jp-section .jp-section-title span{font-size:14px;color:#526b7c}.jp-section .jp-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.jp-section .jp-photo-card{border:1px solid var(--jp-line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 5px 18px #173c5908}.jp-section .jp-photo-open{display:block;position:relative;overflow:hidden}.jp-section .jp-photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .2s}.jp-section .jp-photo-open:hover img{transform:scale(1.025)}.jp-section .jp-photo-enlarge{position:absolute;right:12px;bottom:12px;color:#fff;background:#173c59c9;border-radius:50%;width:32px;height:32px;text-align:center;line-height:32px}.jp-section figcaption{padding:15px 18px;color:#435b6d}.jp-section figcaption p{font-size:15px;margin-bottom:8px}.jp-section figcaption span{font-size:13px;color:#607c8e}.jp-section .jp-photo-missing{aspect-ratio:4/3;display:grid;place-content:center;background:#e9eff3}.jp-section .jp-banner{display:block;width:100%;height:auto;border-radius:14px;margin-bottom:24px}.jp-section .jp-panel{background:#fff;padding:26px;border:1px solid var(--jp-line);border-radius:14px;box-shadow:0 5px 18px #173c5908}.jp-section .jp-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:stretch;margin:22px 0}.jp-section .jp-event-details h2{margin-bottom:14px}.jp-section .jp-event-details p+p{margin-top:9px}.jp-section .jp-venue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0}.jp-section .jp-venue-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.jp-section .jp-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:22px}.jp-section .jp-video-card{background:#fff;border:1px solid var(--jp-line);border-radius:14px;overflow:hidden}.jp-section .jp-video-card iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0}.jp-section .jp-video-card figcaption{font-weight:700}.jp-section .jp-button{display:inline-block;background:var(--jp-ink);color:#fff;border:1px solid var(--jp-ink);border-radius:9px;padding:10px 18px;text-decoration:none;font-size:15px;line-height:1.5;font-weight:700;cursor:pointer;text-align:center}.jp-section .jp-button:hover{background:#24618b;color:#fff}.jp-section .jp-button-light{background:#fff;color:var(--jp-ink)}.jp-section .jp-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.jp-section .jp-activity-card{display:flex;flex-direction:column;gap:16px;text-decoration:none;background:#fff;border:1px solid var(--jp-line);border-radius:14px;padding:26px}.jp-section .jp-activity-card:hover{border-color:#7caecc}.jp-section .jp-activity-card>span:last-child{margin-top:auto;font-size:15px;font-weight:700}.jp-section .jp-activity-symbol{display:grid;place-content:center;background:var(--jp-light);width:85px;height:72px;border-radius:12px;font-size:25px;font-weight:700;letter-spacing:2px}.jp-section .jp-student form{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.jp-section input[type=text]{background:#fff;border:1px solid #aec4d3;border-radius:8px;padding:9px 12px;color:var(--jp-ink);max-width:100%}.jp-section .jp-student input{width:200px}.jp-section .jp-student .jp-age{width:75px}.jp-section .jp-maths-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}.jp-section .jp-question form{display:flex;flex-wrap:wrap;align-items:center;gap:15px}.jp-section .jp-question label{font-size:26px;font-weight:700;white-space:nowrap}.jp-section .jp-question input{width:86px;font-size:23px;text-align:center}.jp-section .jp-answer-feedback{width:100%;font-size:15px;color:#435b6d;min-height:24px}.jp-section .jp-restart{margin-top:24px}.jp-section .jp-game{max-width:520px;margin:0 auto;text-align:center}.jp-section .jp-game-status{text-align:center;font-size:23px;font-weight:700;color:var(--jp-ink)}.jp-section .jp-game-grid{max-width:350px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px auto}.jp-section .jp-game-cell{display:grid;place-content:center;aspect-ratio:1;border:1px solid #bdd0de;border-radius:12px;background:var(--jp-light);font-size:45px;font-weight:700;text-decoration:none;color:var(--jp-ink)}.jp-section a.jp-game-cell:hover{background:#d8eaf6}.jp-section .jp-game-cell.jp-x{background:#d5eaf8}.jp-section .jp-game-cell.jp-o{background:#ffe4d3;color:#854011}.jp-section .jp-animal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.jp-section .jp-animal-card{background:#fff;border:1px solid var(--jp-line);border-radius:14px;overflow:hidden}.jp-section .jp-animal-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.jp-section .jp-animal-card>div{padding:20px}.jp-section .jp-animal-card h2{margin-bottom:16px}.jp-section audio{width:100%;max-width:100%;display:block}.jp-section :focus-visible{outline:3px solid #ce821c;outline-offset:4px}.jp-section [hidden]{display:none!important}
.jp-viewer{border:0;border-radius:14px;padding:15px;background:#122d40;color:#fff;width:min(1080px,95vw);max-height:95vh}.jp-viewer::backdrop{background:#071822df}.jp-viewer [data-photo-image]{display:block;width:100%;height:min(66vh,750px);object-fit:contain}.jp-viewer .jp-viewer-toolbar,.jp-viewer .jp-viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.jp-viewer .jp-viewer-toolbar{margin-bottom:12px}.jp-viewer .jp-viewer-bottom{margin-top:12px}.jp-viewer button{border:1px solid #466781;border-radius:7px;background:#234b69;color:#fff;padding:8px 14px;font:14px Arial;cursor:pointer;white-space:nowrap}.jp-viewer .jp-viewer-bottom p{white-space:pre-line;color:#fff;text-align:center;font-size:14px}.jp-viewer [data-photo-count]{font-size:14px}
@media(max-width:900px){.jp-section{width:calc(100% - 32px);padding:24px}.jp-section .jp-photo-grid,.jp-section .jp-animal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jp-section .jp-activity-grid{grid-template-columns:1fr}.jp-section .jp-feature{grid-template-columns:1fr}.jp-section .jp-maths-grid{grid-template-columns:1fr}}
@media(max-width:550px){.jp-section{width:calc(100% - 20px);margin-top:18px;padding:18px;border-radius:12px}.jp-section .jp-tabs{gap:7px}.jp-section .jp-tabs a{padding:7px 12px;font-size:13px}.jp-section .jp-photo-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.jp-section figcaption{padding:12px}.jp-section figcaption p{font-size:13px}.jp-section .jp-section-title{align-items:start}.jp-section .jp-section-title h2{font-size:22px}.jp-section .jp-section-title span{white-space:nowrap}.jp-section .jp-animal-grid,.jp-section .jp-video-grid{grid-template-columns:1fr}.jp-section .jp-venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jp-section .jp-panel{padding:20px}.jp-section .jp-question .jp-button{width:100%}.jp-viewer .jp-viewer-bottom{flex-wrap:wrap}.jp-viewer .jp-viewer-bottom p{order:3;flex-basis:100%}.jp-section .jp-student input{width:100%}.jp-section .jp-student .jp-age{width:75px}}
@media(prefers-reduced-motion:reduce){.jp-section *{transition:none!important}}
