:root{--burgundy:#6a2222;--learning-blue:#2f648d}.has-real-photo{position:relative;grid-template-columns:1.12fr 1fr!important;overflow:hidden}.has-real-photo>.photo-secondary{display:none!important}.real-photo{margin:0;position:relative;background:#e8e1d2;overflow:hidden;border-radius:9px}.real-photo img{display:block;width:100%;height:100%;object-fit:cover}.hero-photo{height:340px;width:100%;align-self:stretch}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;color:white;background:linear-gradient(transparent,rgba(6,28,47,.85));padding:25px 15px 12px;font-size:10px}.hero-photo figcaption a{color:white}.resource-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.65;mix-blend-mode:luminosity}.knowledge-cover{overflow:hidden;background:#123659!important;color:white!important}.knowledge-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,rgba(5,26,43,.85))}.knowledge-cover .cover-kind,.knowledge-cover .cover-subject{position:relative;z-index:1}.cover-subject{max-width:95%}.collection-button.tone-0,.collection-button.tone-4{border-top:3px solid #6a2222}.collection-button.tone-1,.collection-button.tone-6{border-top:3px solid #2f648d}.collection-button.tone-2,.collection-button.tone-5{border-top:3px solid #978144}.library-hero{background:#fbf8ef;padding:35px;border-radius:12px;border:1px solid #e0d8c7}.library-hero .hero-photo{min-height:350px}.visual-explainer{padding:28px;background:#fff;border:1px solid #d8d9dc;border-radius:12px;margin:24px 0;color:#123659}.visual-explainer h2{font:31px/1.2 Georgia,serif;margin:8px 0 17px}.visual-explainer p{font-size:13px;line-height:1.85;max-width:850px}.visual-explainer>svg{width:100%;height:auto;min-height:120px}.meaning-demo{display:grid;grid-template-columns:.7fr 1.2fr 1fr;gap:20px;align-items:center}.meaning-event{background:#6a2222;color:white;padding:25px;border-radius:8px;font-size:10px;letter-spacing:1.5px}.meaning-event strong{display:block;font:26px/1.3 Georgia,serif;letter-spacing:0;margin-top:12px}.meaning-response{padding:20px;background:#eaf2f7;border-left:4px solid #2f648d;border-radius:5px}.meaning-response>span{font-size:10px;font-weight:600;letter-spacing:1px}.meaning-response p{margin:10px 0 0}.photo-attribution{font-size:11px;line-height:1.8;margin:30px 0;color:#5c6975;padding:16px;border-top:1px solid #ded7c9}.photo-attribution summary{cursor:pointer}.photo-attribution a{color:#123659}.photo-unavailable{background:linear-gradient(130deg,#123659,#376382)}.resource-photo.photo-unavailable{display:none}.real-photo.photo-unavailable{min-height:160px}.real-photo.photo-unavailable img{opacity:0}.cycle-explain{border-top:5px solid #6a2222}.cycle-research{border-top:5px solid #2f648d}.cycle-dashboard{border-top:5px solid #bb9f59}.cycle-principles .coral{background:#6a2222;color:white}.cycle-principles .coral>span{color:#dcc48a}.sidebar nav a[data-nav=empower].active{background:#6a2222}.sidebar nav a[data-nav=learn-apply].active{background:#2b5b7d}
@media(max-width:900px){.hero-photo{height:280px}.meaning-demo{grid-template-columns:1fr}.has-real-photo{gap:25px!important}}@media(max-width:680px){.has-real-photo{grid-template-columns:1fr!important}.hero-photo{height:230px}.visual-explainer{padding:20px 15px}.library-hero{padding:22px}.library-hero .hero-photo{min-height:210px}}

.real-photo figcaption{position:absolute;bottom:0;left:0;right:0;color:white;background:linear-gradient(transparent,rgba(6,28,47,.85));padding:25px 15px 12px;font-size:10px}.real-photo figcaption a{color:white}.programme-hero .cycle-button{margin-right:18px;margin-bottom:10px}

/* Explicit contrast for dark learning cards; headings otherwise use global navy. */
.cycle-principles .coral h2{color:#fff8e9}
.cycle-principles .coral p{color:#fff8e9}
.cycle-principles .coral>span{color:#eed698}
/* Prague library: warm ivory, restrained gold and an uninterrupted photographic view. */
.library-hero{border-top:3px solid #bb9f59;background:linear-gradient(135deg,#fffdf7,#f5efe1);box-shadow:0 12px 34px rgba(18,54,89,.055)}
.library-hero .hero-photo{border:1px solid #c7ad72;box-shadow:0 8px 25px rgba(39,28,12,.15);height:380px}
.library-hero .hero-photo img{object-position:50% 48%}
@media(max-width:680px){.library-hero .hero-photo{height:245px;min-height:0}}
