@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/plus-jakarta-sans-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/plus-jakarta-sans-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/plus-jakarta-sans-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/plus-jakarta-sans-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/plus-jakarta-sans-latin-800-normal.woff2') format('woff2')}

:root{
  --indigo:#18113c;--purple:#4b286d;--purple-dark:#2f1848;--lilac:#f4effa;--lilac-2:#e6dcf2;--muted:#4a3a5e;
  --glass:0.6;
  --wrap:1084px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--indigo);font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-size:19px;line-height:1.6}
img{max-width:100%;height:auto}
[hidden]{display:none !important}
a{color:var(--purple)}
a:hover{color:var(--purple-dark)}
a:focus-visible,button:focus-visible{outline:3px solid transparent;background-color:#ffdd00;color:var(--indigo) !important;box-shadow:0 -2px #ffdd00,0 4px var(--indigo)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:0}
.skip-link:focus-visible{left:0;z-index:20;padding:12px 16px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
h1,h2,h3{font-weight:700;line-height:1.2;margin:0}

/* ---------- Header (glass bar) ---------- */
.site-top{background:var(--indigo)}
.hero-wrap{position:relative}
.site-header{position:relative;z-index:5;background:rgba(24,17,60,var(--glass));-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);border-bottom:1px solid rgba(255,255,255,.38);box-shadow:inset 0 -1px 0 rgba(255,255,255,.1),0 10px 30px rgba(10,6,36,.3)}
.hero-wrap .site-header{position:absolute;top:0;left:0;right:0}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px 40px;padding:12px 32px;max-width:1280px;margin:0 auto;box-sizing:border-box}
.logo{display:block;flex:0 0 auto}
.logo img{display:block;height:52px;width:auto}
.desknav{display:flex;align-items:center;gap:0 20px}
.navlink{display:inline-block;padding:12px 0 9px;color:#fff;font-weight:600;font-size:16.5px;text-decoration:none;border-bottom:3px solid transparent}
.navlink:hover{color:#fff;text-decoration:underline;text-underline-offset:6px}
.navlink[aria-current]{border-bottom-color:#fff}
.btn-donate{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 26px;border-radius:999px;background:#fff;color:var(--indigo);font-weight:700;font-size:17px;text-decoration:none}
.btn-donate:hover{color:var(--indigo)}
.btn-donate svg,.menu-donate svg{color:var(--purple)}
.menu-btn{display:none;align-items:center;gap:10px;min-height:48px;padding:0 20px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font-family:inherit;font-weight:700;font-size:17px;cursor:pointer}
.menu-panel{margin:10px 12px 0;padding:8px 20px 20px;border-radius:28px;background:rgba(24,17,60,var(--glass));-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%);border:1px solid rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 24px 50px rgba(10,6,36,.45)}
.menu-panel a{display:flex;align-items:center;justify-content:space-between;min-height:58px;color:#fff;font-weight:600;font-size:20px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.22)}
.menu-panel a.menu-donate{justify-content:center;gap:10px;min-height:56px;margin-top:20px;border:0;border-radius:999px;background:#fff;color:var(--indigo);font-weight:700;font-size:18px}
@media (prefers-reduced-motion:no-preference){.menu-panel{animation:fade .25s ease}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@media (max-width:1279px){
  .bar{padding:10px 16px}
  .desknav{display:none}
  .menu-btn{display:inline-flex}
  .logo img{height:44px}
}

/* ---------- Hero slider ---------- */
.hero{position:relative;height:740px;overflow:hidden;background:var(--indigo)}
.slide{position:absolute;inset:0;display:flex;align-items:flex-start;padding:128px max(32px,calc((100% - 1020px)/2)) 150px;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s .8s}
.slide.is-active{opacity:1;visibility:visible;transition:opacity .8s ease,visibility 0s}
.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform-origin:60% 40%}
.slide--photo::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(24,17,60,.55) 0%,rgba(24,17,60,.2) 45%,rgba(24,17,60,.8) 100%)}
.slide--g2{background-image:linear-gradient(135deg,#14264a 0%,#2a3f84 55%,#4b5fa8 100%)}
.slide--g3{background-image:linear-gradient(135deg,#3a1a44 0%,#6a2f6e 55%,#93497f 100%)}
.slide--g2::before,.slide--g3::before{content:'';position:absolute;z-index:0;left:35%;top:-100px;width:540px;height:540px;border-radius:50%;background:#4f8fd0;opacity:.5;filter:blur(80px)}
.slide--g3::before{background:#c4708f}
.slide--g2::after,.slide--g3::after{content:'';position:absolute;right:-40px;bottom:-150px;width:600px;height:600px;border-radius:50%;background:#8a62c9;opacity:.5;filter:blur(90px)}
.slide-copy{position:relative;z-index:2;color:#fff}
.slide-copy .chip{display:inline-block;margin-bottom:22px;padding:8px 20px;border-radius:999px;background:rgba(24,17,60,.45);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);border:1px solid rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.45);font-size:15px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--lilac)}
.slide-copy h2{margin:0 0 20px;max-width:860px;font-size:60px;line-height:1.04;font-weight:800;letter-spacing:-2px;text-shadow:0 4px 30px rgba(10,6,36,.55)}
.slide-copy p{margin:0 0 32px;max-width:560px;font-size:22px;line-height:1.5;color:var(--lilac);text-shadow:0 2px 16px rgba(10,6,36,.6)}
@media (prefers-reduced-motion:no-preference){
  .slide.is-active .slide-bg{animation:kenburns 14s ease-out both}
  .slide.is-active .slide-copy>*{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}
  .slide.is-active .slide-copy>:nth-child(1){animation-delay:.1s}
  .slide.is-active .slide-copy>:nth-child(2){animation-delay:.22s}
  .slide.is-active .slide-copy>:nth-child(3){animation-delay:.34s}
  .slide.is-active .slide-copy>:nth-child(4){animation-delay:.46s}
}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.09) translate(-1.2%,-.8%)}}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.btn-pill{display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:0 28px;border-radius:999px;background:#fff;color:var(--indigo);font-weight:700;font-size:19px;text-decoration:none}
.btn-pill:hover{color:var(--indigo)}
.hero-nav{position:absolute;z-index:3;left:max(32px,calc((100% - 1020px)/2));right:max(32px,calc((100% - 1020px)/2));bottom:34px;display:flex;align-items:flex-end;gap:32px}
.hero-tabs{flex:1 1 auto;display:flex;gap:20px;min-width:0}
.hero-tabs .htab{flex:1 1 0;min-width:0;padding:0;border:0;background:transparent;cursor:pointer;text-align:left;color:#fff;font-family:inherit;opacity:.55;transition:opacity .2s}
.hero-tabs .htab[aria-current],.hero-tabs .htab:hover{opacity:1}
.hero-tabs .hbar{display:block;position:relative;height:4px;margin-bottom:12px;border-radius:2px;background:rgba(255,255,255,.4);overflow:hidden}
.hero-tabs .hbar .hfill{position:absolute;left:0;top:0;bottom:0;width:0;background:#fff}
.hero-tabs .htab.is-done .hbar .hfill{width:100%}
.hero-tabs .htn{display:block;font-size:14px;font-weight:700;letter-spacing:1.5px}
.hero-tabs .htl{display:block;font-size:17px;font-weight:600;line-height:1.3}
.hero-arrows{flex:none;display:flex;gap:12px}
.hero-arrows button{width:56px;height:56px;padding:0;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(24,17,60,var(--glass));-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 10px 30px rgba(10,6,36,.35);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.hero-arrows button:hover{background:rgba(24,17,60,.85)}
@media (max-width:860px){
  .hero{height:800px}
  .slide{padding:104px 16px 190px}
  .slide-copy h2{font-size:40px;letter-spacing:-1px}
  .slide-copy p{font-size:19px}
  .hero-nav{left:16px;right:16px;bottom:20px;flex-direction:column;align-items:stretch;gap:14px}
  .hero-tabs{gap:10px}
  .hero-tabs .htl{font-size:14px}
  .hero-arrows{justify-content:flex-end}
  .hero-arrows button{width:48px;height:48px}
}

/* ---------- Homepage sections ---------- */
.sec{--bg:#f4effa;--fg:#18113c;--tint:rgba(255,255,255,.55);--btnbg:#4b286d;--btnfg:#fff;--rule:rgba(24,17,60,.3);background:var(--bg);color:var(--fg)}
.sec--indigo{--bg:#18113c;--fg:#fff;--tint:rgba(255,255,255,.12);--btnbg:#fff;--btnfg:#18113c;--rule:rgba(255,255,255,.35)}
.sec--slate{--bg:#55555f;--fg:#fff;--tint:rgba(255,255,255,.14);--btnbg:#fff;--btnfg:#18113c;--rule:rgba(255,255,255,.35)}
.sec--rose{--bg:#d9c4d3;--tint:rgba(255,255,255,.45)}
.sec--stone{--bg:#b9b7bd;--tint:rgba(255,255,255,.45);--btnbg:#18113c}
.sec--sun{--bg:#eeee9f;--tint:rgba(255,255,255,.5)}
.sec--poppy{--bg:#c8231a;--fg:#fff;--tint:rgba(255,255,255,.16);--btnbg:#fff;--btnfg:#18113c;--rule:rgba(255,255,255,.4)}
.sec-inner{max-width:var(--wrap);margin:0 auto;padding:72px 32px;display:flex;flex-wrap:wrap;gap:48px 64px;align-items:center}
.sec-media{flex:1 1 380px;min-width:0;margin:0}
.sec-media img{display:block;width:100%;height:auto}
.sec-media figcaption{margin-top:10px;font-size:14px}
.sec-card{flex:1 1 400px;min-width:0;padding:40px 44px 44px;border-radius:32px;background:var(--tint);-webkit-backdrop-filter:blur(22px) saturate(165%);backdrop-filter:blur(22px) saturate(165%);border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),inset 0 -1px 0 rgba(255,255,255,.15),0 24px 60px rgba(24,17,60,.18)}
.sec-card h2{margin:0 0 24px;padding-bottom:20px;border-bottom:2px solid var(--rule);font-size:34px;letter-spacing:-.4px}
.sec-card p{margin:0 0 20px;max-width:520px;font-size:20px;line-height:1.6}
.sec .btn{display:inline-flex;align-items:center;gap:12px;min-height:52px;margin-top:12px;padding:12px 28px;background:var(--btnbg);color:var(--btnfg);font-weight:700;font-size:18px;text-decoration:none}
.sec .btn:hover{color:var(--btnfg)}
.sec a:not(.btn){color:inherit}
@media (max-width:860px){.sec-card{padding:28px 24px 30px;border-radius:26px}}

.more{background:var(--lilac)}
.more-inner{padding-top:72px;padding-bottom:88px}
.more h2{margin:0 0 12px;text-align:center;font-size:34px;letter-spacing:-.4px}
.more-intro{margin:0 auto 48px;max-width:560px;text-align:center;font-size:19px;color:var(--muted)}
.cards{display:flex;flex-wrap:wrap;gap:28px;margin-top:40px}
.more-intro+.cards{margin-top:0}
.card{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(20px) saturate(165%);backdrop-filter:blur(20px) saturate(165%);border:1px solid rgba(255,255,255,.85);border-top:6px solid var(--c,#4b3f85);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 48px rgba(24,17,60,.14)}
.card--blue{--c:#3b4f9e}.card--indigo{--c:#18113c}
.card-body{padding:36px 32px 8px;flex:1}
.card-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;margin-bottom:24px;background:var(--c,#4b3f85);color:#fff}
.card h3{margin:0 0 12px;font-size:26px;line-height:1.25}
.card p{margin:0;font-size:18px;line-height:1.6;color:#3d2d52}
.card-foot{padding:24px 32px 32px}
.card-foot a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:0 20px;background:var(--c,#4b3f85);color:#fff;font-weight:700;font-size:17px;text-decoration:none}
.card-foot a:hover{color:#fff}

/* ---------- Content pages ---------- */
.title-band{background:var(--lilac);border-bottom:1px solid var(--lilac-2)}
.title-band .wrap{padding-top:56px;padding-bottom:56px}
.crumbs{margin-bottom:28px;font-size:16px;color:var(--muted)}
.crumbs span[aria-hidden]{color:#7c5aa3;margin:0 6px}
.title-band h1{margin:0 0 24px;font-size:56px;line-height:1.08;letter-spacing:-1px}
.title-band .lead{margin:0;max-width:820px;font-size:24px;line-height:1.5;color:var(--muted)}
.page-wide{padding-top:64px;padding-bottom:88px}
.layout{display:flex;flex-wrap:wrap;gap:48px 56px;align-items:flex-start;padding-top:56px;padding-bottom:88px}
.layout-narrow{max-width:var(--wrap);margin:0 auto;padding:56px 32px 88px}
.side{flex:0 0 260px;min-width:0;align-self:flex-start;position:sticky;top:24px}
.side h2{margin:0 0 12px;font-size:14px;line-height:1.3;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.side ul{margin:0;padding:0;list-style:none}
.side a{display:block;padding:12px 16px 12px 20px;border-left:4px solid var(--lilac-2);color:var(--purple);font-weight:500;font-size:18px;text-decoration:none}
.side a:hover{border-left-color:var(--purple);background:var(--lilac)}
.side a.is-current{border-left-color:var(--purple);color:var(--indigo);font-weight:700}
.content{flex:1 1 480px;min-width:0;max-width:704px}

.blocks{line-height:1.7}
.blocks>*{margin-top:0;margin-bottom:24px}
.blocks h2{margin:56px 0 20px;font-size:34px;letter-spacing:-.4px}
.blocks>h2:first-child{margin-top:0}
.blocks h3{margin:40px 0 16px;font-size:26px}
.blocks ul,.blocks ol{padding-left:28px}
.blocks li{margin-bottom:8px}
.b-quote{margin:40px 0;padding:36px 40px;background:var(--lilac);border-left:8px solid var(--purple);font-size:26px;line-height:1.4;font-weight:500}
.b-quote p{margin:0}
.b-quote footer{margin-top:16px;font-size:16px;font-weight:600;color:var(--muted)}
.b-image{margin:40px 0}
.b-image img{display:block;width:100%;height:auto}
.b-image figcaption{margin-top:14px;font-size:15px;line-height:1.5;color:var(--muted)}
.b-line{margin:48px 0;border:0;border-top:1px solid var(--lilac-2)}
.b-steps{margin:0 0 56px;padding:0;list-style:none;counter-reset:step;border-bottom:1px solid var(--lilac-2)}
.b-steps li{display:flex;gap:20px;align-items:flex-start;margin:0;padding:22px 0;border-top:1px solid var(--lilac-2);counter-increment:step}
.b-steps-n{flex:0 0 auto;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--purple);color:#fff;font-weight:700;font-size:20px}
.b-steps-n::before{content:counter(step)}
.b-steps-t{padding-top:6px;font-size:21px;line-height:1.5}
.b-buttons{display:flex;flex-wrap:wrap;gap:16px 20px;margin-top:40px}
.blocks .btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 28px;font-weight:700;font-size:18px;text-decoration:none}
.btn-primary{background:var(--purple);color:#fff;box-shadow:0 4px 0 var(--indigo)}
.btn-primary:hover{color:#fff}
.btn-secondary{background:#fff;color:var(--purple);border:2px solid var(--purple)}

.log{margin-bottom:48px}
.log h2{margin:0 0 4px;font-size:30px;letter-spacing:-.4px}
.log-date{margin:0 0 16px;font-size:16px;color:var(--muted)}
.log ul{margin:0;padding-left:28px;line-height:1.7}
.log li{margin-bottom:8px}
.layout-narrow{max-width:760px}

/* ---------- Footer ---------- */
.site-footer{background:var(--indigo);color:#fff;border-top:10px solid var(--purple);font-size:17px;line-height:1.5}
.site-footer a{color:#fff}
.footer-inner{padding-top:56px;padding-bottom:40px}
.footer-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;padding-bottom:36px;margin-bottom:44px;border-bottom:1px solid #4a4080}
.footer-top img{display:block;height:64px;width:auto}
.flink{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.flink:hover{text-decoration-thickness:3px}
.footer-top .flink{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600}
.footer-cols{display:flex;flex-wrap:wrap;gap:44px 56px}
.footer-col{flex:1 1 260px;min-width:200px}
.footer-col-wide{flex:2 1 380px}
.footer-col h2,.supporters h2{margin:0 0 20px;font-size:20px;line-height:1.25}
.footer-col ul,.supporters ul{margin:0;padding:0;list-style:none}
.footer-col li{margin:0 0 14px;break-inside:avoid}
.two-col{column-count:2;column-gap:32px}
.social{display:grid;grid-template-columns:repeat(3,48px);gap:12px}
.social li{margin:0}
.social-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:#fff;text-decoration:none}
.social-link:hover{background:#fff;color:var(--indigo)}
.social-link:focus-visible{border-radius:50%}
.supporters{margin-top:52px;padding:36px 36px 22px;background:rgba(255,255,255,.06);border:1px solid #4a4080}
.supporters ul{column-width:300px;column-gap:48px}
.supporters li{margin:0 0 14px;break-inside:avoid}
.site-footer hr{margin:48px 0 32px;border:0;border-top:1px solid #4a4080}
.footer-bottom{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px 48px}
.footer-legal{flex:1 1 520px;min-width:0}
.support-links{margin:0 0 24px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px 0}
.support-links li{display:flex;align-items:center}
.support-links li+li::before{content:'';width:1px;height:16px;margin:0 18px;background:rgba(255,255,255,.35)}
@media (max-width:640px){.support-links{gap:4px 22px}.support-links li+li::before{display:none}}
.support-links a{display:inline-block;padding:4px 0}
.footer-legal p{margin:0 0 12px;max-width:700px;color:#d9d4ea;font-size:16px;line-height:1.55}
.footer-meta{flex:0 0 auto}
.footer-meta p{margin:0}
.footer-meta .ver{margin-top:6px;font-size:15px;color:#d9d4ea}
@media (max-width:640px){
  .title-band h1{font-size:40px}
  .title-band .lead{font-size:21px}
  .two-col{column-count:1}
}

.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 28px;font-weight:700;font-size:18px;text-decoration:none}

/* ---- 0.5.1: story, game, accordion blocks ---- */
.b-story{margin:0 0 56px;padding-bottom:56px;border-bottom:1px solid var(--lilac-2)}
.b-story h2{margin:0 0 20px}
.b-story-cols{display:flex;flex-wrap:wrap;gap:28px 40px;align-items:flex-start;line-height:1.7}
.b-story-text{flex:1 1 380px;min-width:0;max-width:640px}
.b-story-text p{margin:0 0 16px}
.b-story-text .callout{margin:24px 0 0;padding:18px 24px;background:var(--lilac);border-left:8px solid var(--purple)}
.b-story-text .callout a{font-weight:600;font-size:18px;text-underline-offset:4px}
.b-story-imgs{flex:1 1 220px;min-width:0;max-width:300px;display:flex;flex-direction:column;gap:14px}
.b-story-imgs img{display:block;width:100%;height:auto}
.b-game{margin:0 0 48px}
.b-game h2{margin:0 0 16px}
.game-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#2c1a55}
.game-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#2c1a55}
.game-start{position:absolute;inset:0;background:#2c1a55 center/contain no-repeat}
.game-start::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,17,60,.55) 0,rgba(24,17,60,0) 30%,rgba(24,17,60,0) 55%,rgba(24,17,60,.9) 100%)}
.game-btn{position:absolute;left:28px;bottom:28px;display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 30px;border:0;border-radius:999px;background:#fff;color:var(--indigo);font:700 19px/1 inherit;font-family:inherit;cursor:pointer}
.game-note{position:absolute;right:28px;bottom:34px;margin:0;font-size:15px;color:#e6dcf2}
.game-note--solo{left:28px;right:28px;text-align:center;top:50%;bottom:auto}
.game-alt{margin:14px 0 0;font-size:17px}
.b-acc{margin:48px 0}
.b-acc h2{margin:0 0 12px}
.acc-list{border-bottom:1px solid #d9cfe8}
.acc{border-top:1px solid #d9cfe8}
.acc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:8px 0;cursor:pointer;font-weight:700;font-size:22px;list-style:none}
.acc summary::-webkit-details-marker{display:none}
.acc summary svg{flex:0 0 auto;transition:transform .2s;color:var(--purple)}
.acc[open] summary svg{transform:rotate(180deg)}
.acc-body{padding:4px 0 32px}
.acc-body h3{margin:0 0 8px;font-size:20px}

/* ---- podcasts ---- */
.pod-hero{background:var(--lilac);border-bottom:1px solid var(--lilac-2)}
.pod-hero .wrap{display:flex;flex-wrap:wrap;gap:32px 56px;align-items:center;padding-top:56px;padding-bottom:56px}
.pod-hero-text{flex:1 1 460px;min-width:0}
.pod-hero-text p{max-width:640px;font-size:21px;line-height:1.55;color:var(--muted);margin:0 0 16px}
.pod-hero-img{flex:0 1 320px;min-width:240px}
.pod-hero-img img{display:block;width:100%;height:auto}
.pod-list-wrap{padding-top:48px;padding-bottom:88px}
.pod-search{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 24px;margin-bottom:12px}
.pod-search div{flex:1 1 360px}
.pod-search label{display:block;margin-bottom:8px;font-weight:700;font-size:19px}
.pod-search input{display:block;width:100%;min-height:52px;padding:0 16px;box-sizing:border-box;border:2px solid var(--indigo);border-radius:0;background:#fff;color:var(--indigo);font:inherit;font-size:19px}
.pod-count{margin:0 0 28px;font-size:17px;color:var(--muted)}
.pod-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:20px}
.pod-item{background:#fff;border:1px solid #d9cfe8;border-left:8px solid var(--purple);padding:28px 32px}
.pod-row{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:flex-start;justify-content:space-between}
.pod-main{flex:1 1 420px;min-width:0}
.pod-meta{margin:0 0 8px;font-size:15px;font-weight:600;letter-spacing:.5px;color:var(--muted)}
.pod-item h2{margin:0 0 12px;font-size:26px;line-height:1.25;letter-spacing:-.3px}
.pod-desc{margin:0;font-size:18px;line-height:1.6;color:#3d2d52}
.pod-actions{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:10px;min-width:190px}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;border-radius:999px;font-weight:700;text-decoration:none}
.pill-play{flex:1 1 100%;min-height:48px;padding:0 22px;background:var(--purple);color:#fff;font-size:17px;border:0;font-family:inherit;cursor:pointer}
.pill-out{flex:1 1 calc(50% - 5px);min-height:44px;padding:0 14px;border:2px solid var(--purple);color:var(--purple);font-size:15px}
.pod-player{margin-top:16px}
.pod-player audio{display:block;width:100%}
.pod-more summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:12px;color:var(--purple);font-weight:700;font-size:17px;cursor:pointer}
.pod-more div{margin-top:8px;padding-top:16px;border-top:1px solid var(--lilac-2);max-width:720px;font-size:18px;line-height:1.65;color:#3d2d52}
.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 28px;margin-top:40px}
.pager span{font-size:18px;color:var(--muted)}
@media (max-width:860px){.game-btn{left:16px;bottom:16px;min-height:48px;padding:0 22px;font-size:17px}.game-note{display:none}.pod-item{padding:22px 20px}}

/* ---- timeline ---- */
.tl-head{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:flex-start;justify-content:space-between}
.tl-head-img{flex:0 1 300px;max-width:300px;height:auto;display:block}
.tl-wrap{position:relative;padding-top:56px;padding-bottom:72px}
.tl-years{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--lilac-2);box-shadow:0 2px 12px rgba(24,17,60,.06)}
.tl-years ul{display:flex;gap:4px;margin:0 auto;padding:6px 32px;max-width:var(--wrap,1084px);box-sizing:border-box;list-style:none;overflow-x:auto;scrollbar-width:thin}
.tl-years a{display:block;padding:8px 14px;border-bottom:3px solid transparent;text-decoration:none;color:var(--purple);font-weight:600;font-size:16px;white-space:nowrap}
.tl-years a:hover{background:var(--lilac)}
.tl-years a.is-current{border-bottom-color:var(--purple);color:var(--indigo);font-weight:700}
.tl-item{scroll-margin-top:72px}
.tl-kind{display:inline-block;margin:0 0 10px;padding:3px 10px;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;background:#ece4f6;color:var(--purple)}
.tl-card--testimony{border-left-color:#8e4fa8;background:#fbf7fe}
.tl-card--testimony .tl-kind{background:var(--purple);color:#fff}
.tl-more{margin:0 0 14px}
.tl-more summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;font-weight:700;color:var(--purple);text-decoration:underline;text-underline-offset:4px}
.tl-more .less,.tl-more[open] .more{display:none}
.tl-more[open] .less{display:inline}
.tl-more summary .sr,.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tl-more[open] summary{margin-bottom:8px}
.tl{list-style:none;margin:0;padding:0;position:relative}
.tl::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:4px;margin-left:-2px;background:var(--purple)}
.tl-item{display:grid;grid-template-columns:1fr 56px 1fr;align-items:center;margin:0 0 64px;scroll-margin-top:24px}
.tl-media{justify-self:end;max-width:400px;width:100%;padding-right:8px}
.tl-media img{display:block;width:auto;max-width:100%;height:auto;margin-left:auto;box-shadow:-10px 10px 0 #8e4fa8}
.tl-dot{justify-self:center;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--purple);box-sizing:border-box;position:relative}
.tl-card{background:#fbf9fe;border-left:6px solid var(--purple);padding:28px 32px;box-shadow:0 6px 24px rgba(24,17,60,.07);max-width:460px}
.tl-date{margin:0 0 8px;font-size:14px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.tl-card h2{margin:0 0 14px;font-size:26px;line-height:1.25}
.tl-card p{margin:0 0 14px;line-height:1.65;color:#3d2d52}
.tl-card .btn{margin:6px 8px 0 0}
.tl-top{text-align:center;margin:8px 0 0;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;font-size:14px}
.tl-top a{text-decoration:none}
@media (max-width:860px){
  .tl::before{left:11px;margin-left:0}
  .tl-item{grid-template-columns:24px 1fr;gap:0 16px;align-items:start}
  .tl-dot{grid-column:1;grid-row:1;margin-top:6px;justify-self:start}
  .tl-card{grid-column:2;grid-row:1;max-width:none;padding:22px 20px}
  .tl-media{grid-column:2;grid-row:2;justify-self:start;max-width:none;padding:0;margin-top:16px}
  .tl-media:empty{display:none}
}
.tl-yearmark{grid-column:1/-1;justify-self:center;position:relative;z-index:1;margin:0 0 28px;padding:6px 28px;background:#fff;line-height:1}
.tl-yearmark span{display:block;font-size:76px;font-weight:800;letter-spacing:-3px;color:transparent;-webkit-text-stroke:2px var(--purple)}
.tl-item--yr:not(:first-child){margin-top:24px}
@media (max-width:860px){
  .tl-yearmark{grid-column:2;justify-self:start;margin:0 0 14px;padding:0;background:none}
  .tl-yearmark span{font-size:48px;letter-spacing:-2px;-webkit-text-stroke-width:1.5px}
  .tl-item--yr .tl-dot,.tl-item--yr .tl-card{grid-row:2}
  .tl-item--yr .tl-media{grid-row:3}
}
.tl-card .tl-source{margin:12px 0 0;font-size:15px;font-weight:600;color:var(--muted)}

/* ---- to-do page ---- */
.todo{list-style:none;margin:0 0 40px;padding:0}
.todo li{padding:14px 0 14px 20px;border-left:6px solid var(--purple);background:#fbf9fe;margin:0 0 10px;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline}
.todo-done{border-left-color:#9aa;opacity:.7}
.todo-done strong{text-decoration:line-through}
.todo-area{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);min-width:96px}
.todo-detail{flex:1 1 100%;margin-left:110px;color:#3d2d52;font-size:16px}
.todo-n{font-weight:400;color:var(--muted)}
.lead-note{color:var(--muted);margin:0 0 32px}

/* ---- news ---- */
.news-wrap{padding-top:48px;padding-bottom:88px}
.news-feature,.news-grid{list-style:none;margin:0;padding:0}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 28px;margin-top:32px}
.news-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d9cfe8;border-top:6px solid var(--purple)}
.news-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--lilac)}
.news-media img{display:block;width:100%;height:100%;object-fit:cover}
.news-ph{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-size:44px;font-weight:800;letter-spacing:-1px;color:#cdb8e6;background:linear-gradient(135deg,var(--lilac),#e6dcf2)}
.news-body{padding:22px 24px 26px}
.news-date{margin:0 0 8px;font-size:14px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.news-card h2{margin:0 0 10px;font-size:22px;line-height:1.3;letter-spacing:-.2px}
.news-card h2 a{color:var(--indigo);text-decoration:none}
.news-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.news-sum{margin:0;color:#3d2d52;line-height:1.6;font-size:17px}
.news-card--big{flex-direction:row;flex-wrap:wrap}
.news-card--big .news-media{flex:1 1 380px;aspect-ratio:auto;min-height:300px}
.news-card--big .news-body{flex:1 1 340px;align-self:center;padding:36px 40px}
.news-card--big h2{font-size:34px;line-height:1.2}
.news-card--big .news-sum{font-size:19px}
.news-hero{margin:0 0 40px}
.news-nav{display:flex;flex-wrap:wrap;gap:16px 24px;margin:56px 0 24px;padding-top:32px;border-top:1px solid var(--lilac-2)}
.news-nav a{flex:1 1 260px;display:block;padding:16px 20px;border-left:6px solid var(--purple);background:var(--lilac);text-decoration:none;color:var(--indigo);font-weight:700}
.news-nav a.is-next{border-left-color:#8e4fa8;text-align:right;border-left:0;border-right:6px solid #8e4fa8}
.news-nav span{display:block;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
@media (max-width:980px){.news-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.news-grid{grid-template-columns:1fr}.news-card--big .news-body{padding:24px}}

/* ---- exhibition ---- */
.xh{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center;justify-content:space-between}
.xh-btn{flex:0 0 auto}
.xwrap{padding-top:48px;padding-bottom:24px}
.xb{margin:0 0 64px}
.xb h2{margin:0 0 20px;font-size:30px}
.xfig{position:relative;margin:0;line-height:0;background:var(--lilac)}
.xfig>img{display:block;width:100%;height:auto}
.xpin{position:absolute;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;border:3px solid #fff;background:var(--purple);color:#fff;font:700 24px/1 inherit;font-family:inherit;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;box-shadow:0 2px 10px rgba(10,6,36,.55)}
.xpin:hover{background:#6a3a93;transform:translate(-50%,-50%) scale(1.12)}
.xpin::after{content:"";position:absolute;inset:-9px}
.xhint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(380px,86%);box-sizing:border-box;background:#fff;color:var(--indigo);padding:24px 28px;line-height:1.5;text-align:center;box-shadow:0 12px 40px rgba(10,6,36,.5)}
.xhint h3{margin:0 0 8px;font-size:20px}
.xhint p{margin:0 0 16px;font-size:16px;color:var(--muted)}
.xhint[hidden]{display:none}
.xlist{margin:16px 0 0}
.xlist summary{cursor:pointer;color:var(--purple);font-weight:600;min-height:44px;display:flex;align-items:center}
.xlist ol{padding-left:24px}
.xstory{margin:0 0 20px}
.xstory h3{margin:0 0 6px;font-size:20px}
.xout,.xout.wrap{max-width:none;width:100%;margin:56px 0 0;padding:0}
.xout-in{background:var(--purple);color:#fff;padding:56px max(32px,calc((100% - 1020px)/2)) 64px;border-top:1px solid #8e4fa8}
.xout-in h2{margin:0 0 10px;font-size:28px;color:#fff}
.xout-in p{margin:0 0 18px;color:#e6dcf2;max-width:640px}
.btn-light{display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border:2px solid #fff;color:#fff;text-decoration:none;font-weight:700}
.btn-light:hover{background:#fff;color:var(--indigo)}
.xdlg{border:0;padding:0;max-width:min(1100px,94vw);width:100%;max-height:92vh;background:#fff;color:var(--indigo)}
.xdlg::backdrop{background:rgba(10,6,36,.8)}
.xdlg-in{display:flex;flex-wrap:wrap;max-height:92vh;overflow:auto;position:relative}
.xdlg-close{position:absolute;right:10px;top:10px;z-index:2;width:48px;height:48px;border:0;border-radius:50%;background:var(--indigo);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.xdlg-fig{flex:1 1 520px;margin:0;background:#0f0a2a;display:flex;flex-direction:column;justify-content:center}
.xdlg-fig[hidden]{display:none}
.xdlg-fig img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain}
.xdlg-fig figcaption{padding:10px 16px;font-size:14px;color:#d9d4ea;line-height:1.4}
.xdlg-body{flex:1 1 340px;padding:48px 36px 32px;line-height:1.65;box-sizing:border-box}
.xdlg-count{margin:0 0 6px;font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.xdlg-body h2{margin:0 0 16px;font-size:28px;line-height:1.25}
.xdlg-nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.xdlg-nav .btn{min-height:44px;padding:0 18px;font-size:16px}
@media (max-width:860px){.xpin{width:34px;height:34px;font-size:20px}.xhint{padding:16px;width:90%}.xhint p{display:none}.xdlg-body{padding:28px 20px}}

/* ---------- Homepage 0.8.0 ---------- */
.hp-sec{padding:80px 0;background:#fff;color:var(--indigo)}
.hp-sec--lilac{background:var(--lilac)}
.hp-sec--purple{background:var(--purple);color:#fff}
.hp-h2{margin:0 0 12px;font-size:40px;line-height:1.15;letter-spacing:-.6px}
.hp-intro{margin:0 0 36px;max-width:760px;font-size:21px;color:var(--muted)}
.hp-sec--purple .hp-intro{color:#f4effa}
.hp-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:32px}
.hp-head .hp-h2{margin:0}
.hp-link{font-weight:700;font-size:17px}
.hp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.hp-tile{background:#fff;border:1px solid #d9cfe8}
.hp-gt{position:relative;overflow:hidden;border:0;background:var(--indigo)}
.hp-gt img{display:block;width:100%;aspect-ratio:1/1;height:auto;object-fit:cover}
.hp-gt .g{position:absolute;left:20px;right:20px;bottom:20px;box-sizing:border-box;height:200px;display:flex;flex-direction:column;padding:24px 26px 26px;border-radius:28px;background:rgba(24,17,60,.74);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);border:1px solid rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 18px 40px rgba(10,6,36,.35);color:#fff}
.hp-gt .g h3{margin:0 0 8px;font-size:26px;line-height:1.2;color:#fff}
.hp-gt .g p{margin:0 0 auto;padding-bottom:14px;font-size:18px;line-height:1.5;color:#f4effa}
.hp-pill{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;background:#fff;color:var(--indigo);font-weight:700;font-size:17px;text-decoration:none}
.hp-pill:hover{color:var(--indigo)}
.hp-pill--w{min-height:52px;font-size:18px}
.hp-outline{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border:2px solid #fff;color:#fff;font-weight:700;font-size:18px;text-decoration:none}
.hp-outline:hover{color:#fff}
.hp-btns{display:flex;flex-wrap:wrap;gap:18px}
.hp-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;margin:0;padding:0}
.hp-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;list-style:none;margin:0;padding:0}
.hp-door{display:flex;flex-direction:column;justify-content:space-between;min-height:210px;padding:26px 24px 22px;background:#fff;border:1px solid #d9cfe8;border-top:6px solid var(--purple);text-decoration:none;color:var(--indigo)}
.hp-door:hover{background:var(--lilac);color:var(--indigo)}
.hp-door b{display:block;font-size:22px;line-height:1.25;letter-spacing:-.2px}
.hp-door span{display:block;margin-top:8px;font-size:17px;line-height:1.5;color:var(--muted)}
.hp-door i{margin-top:20px;font-style:normal;font-weight:700;font-size:17px;color:var(--purple)}
.hp-qsec{background:var(--indigo) center/cover no-repeat;color:#fff;padding:72px 0}
.hp-qglass{display:flex;flex-wrap:wrap;gap:36px 64px;align-items:center;border-radius:36px;padding:48px 52px;background:rgba(24,17,60,.84);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);border:1px solid rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 24px 60px rgba(10,6,36,.4)}
.hp-qmain{flex:1 1 520px;min-width:0}
.hp-eyebrow{margin-bottom:20px;font-size:15px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#cdb8e6}
.hp-q{margin:0}
.hp-q p{margin:0;font-size:32px;line-height:1.4;font-weight:600;letter-spacing:-.4px}
.hp-qsrc{margin:24px 0 0;font-size:19px;color:#e6dcf2}
.hp-qmain>p:last-child{margin:28px 0 0}
.hp-qp{flex:0 1 260px;width:260px;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:24px}
.hp-card{position:relative;display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #d9cfe8;border-top:6px solid var(--purple)}
.hp-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--lilac)}
.hp-card .b{padding:20px 22px 24px}
.hp-card h3{margin:0 0 8px;font-size:22px;line-height:1.25}
.hp-card h3 a{color:var(--indigo);text-decoration:none}
.hp-card h3 a:hover{text-decoration:underline}
.hp-card p{margin:0 0 16px;font-size:17px;color:#3d2d52}
.hp-feature{flex-direction:row;flex-wrap:wrap;margin-bottom:28px;height:auto}
.hp-fmedia{position:relative;flex:1 1 380px;min-height:300px;background:var(--lilac)}
.hp-fmedia img{height:100%;aspect-ratio:auto;position:absolute;inset:0}
.hp-feature .b{flex:1 1 340px;align-self:center;padding:36px 40px}
.hp-feature h3{font-size:32px;line-height:1.2}
.hp-feature p{font-size:19px;margin-bottom:24px}
.hp-chip{position:absolute;top:14px;left:14px;z-index:2;padding:6px 14px;border-radius:999px;background:rgba(24,17,60,.84);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.4);color:#fff;font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.hp-date{margin:0 0 6px;font-size:14px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.hp-ph{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:800;color:#cdb8e6;background:linear-gradient(135deg,var(--lilac),var(--lilac-2))}
.hp-btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 28px;background:var(--purple);color:#fff;font-weight:700;font-size:18px;text-decoration:none;box-shadow:0 4px 0 var(--indigo)}
.hp-btn:hover{color:#fff}
.hp-pod{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;margin-top:36px;padding:24px 28px;background:#fff;border:1px solid #d9cfe8;border-left:6px solid var(--purple)}
.hp-pod{flex-wrap:nowrap}.hp-podimg{flex:0 0 96px;display:block;width:96px;height:96px;background:var(--lilac)}.hp-podimg img{display:block;width:96px;height:96px;object-fit:cover}.hp-podb{flex:1 1 280px;min-width:0}.hp-podt{margin:4px 0 0;font-size:24px;line-height:1.2;font-weight:800}.hp-podt a{color:var(--indigo);text-decoration:none}.hp-podt a:hover{text-decoration:underline}.hp-pods{margin:6px 0 0;font-size:18px;line-height:1.5;color:#3d2d52}@media (max-width:700px){.hp-pod{flex-wrap:wrap}.hp-podimg{flex-basis:72px;width:72px;height:72px}.hp-podimg img{width:72px;height:72px}}
.hp-support{max-width:760px}
.hp-support .hp-h2{margin-bottom:16px}
.hp-support .hp-intro{margin-bottom:30px;line-height:1.55}
.hp-contact{background:var(--lilac);border-top:1px solid var(--lilac-2)}
.hp-contact-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px;padding-top:44px;padding-bottom:44px}
.hp-contact h2{margin:0 0 6px;font-size:26px}
.hp-contact p{margin:0;font-size:20px;color:#3d2d52}
@media (max-width:980px){.hp-4{grid-template-columns:repeat(2,1fr)}.hp-3{grid-template-columns:1fr}.hp-tiles{grid-template-columns:1fr}}
@media (max-width:700px){
  .hp-sec{padding:56px 0}
  .hp-h2{font-size:32px}
  .hp-q p{font-size:23px;line-height:1.45}
  .hp-qglass{padding:28px 22px;border-radius:28px}
  .hp-qsec{padding:48px 0}
  .hp-qp{flex:1 1 100%;width:100%;aspect-ratio:4/3}
  .hp-gt .g{left:12px;right:12px;bottom:12px;padding:20px;height:auto}
  .hp-btn,.hp-pill--w,.hp-outline{width:100%;justify-content:center}
}
@media (max-width:560px){.hp-4{grid-template-columns:1fr}}
@media (prefers-reduced-transparency:reduce){.hp-gt .g,.hp-chip,.hp-qglass{background:#18113c !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}}
@media (forced-colors:active){.hp-gt .g,.hp-chip,.hp-qglass{border:2px solid CanvasText}}

/* ---------- Contact form ---------- */
.contact-wrap{padding-top:48px;padding-bottom:88px;max-width:calc(720px + 64px)}
.c-intro{margin-bottom:32px;font-size:21px}
.c-intro p{margin:0 0 16px}
.c-field{margin-bottom:32px}
.c-field label{display:block;margin-bottom:8px;font-weight:700;font-size:20px}
.c-hint{margin:0 0 8px;font-size:18px;color:var(--muted)}
.c-error{margin:0 0 8px;font-weight:700;color:#b3261e}
.c-field input,.c-field select,.c-field textarea{display:block;width:100%;min-height:52px;padding:10px 14px;border:2px solid var(--indigo);border-radius:0;background:#fff;color:var(--indigo);font-family:inherit;font-size:19px;line-height:1.5}
.c-field textarea{min-height:200px;resize:vertical}
.c-field input:focus,.c-field select:focus,.c-field textarea:focus{outline:3px solid #ffdd00;outline-offset:0;box-shadow:inset 0 0 0 2px var(--indigo)}
.c-field.has-error{padding-left:20px;border-left:6px solid #b3261e}
.c-field.has-error input,.c-field.has-error select,.c-field.has-error textarea{border-color:#b3261e}
.c-summary{margin-bottom:36px;padding:24px 28px;border:5px solid #b3261e}
.c-summary:focus{outline:3px solid #ffdd00}
.c-summary h2{margin:0 0 12px;font-size:26px}
.c-summary ul{margin:0;padding-left:22px}
.c-summary a{color:#b3261e;font-weight:700}
.c-summary p{margin:0}
.c-panel{padding:36px 40px;background:var(--lilac);border:1px solid var(--lilac-2);border-left:8px solid var(--purple)}
.c-panel:focus{outline:3px solid #ffdd00}
.c-panel h2{margin:0 0 12px;font-size:30px}
.c-panel p{margin:0 0 12px;font-size:20px}
.c-note{margin-bottom:24px;padding:16px 20px;background:#fff7cc;border:2px solid #ffdd00;font-size:17px}
.c-off{font-size:21px}
.c-privacy{margin:-8px 0 32px;font-size:18px;color:var(--muted)}
.c-privacy p{margin:0 0 10px}
.c-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.c-send{display:inline-flex;align-items:center;min-height:54px;padding:0 32px;border:0;font-family:inherit;font-weight:700;font-size:19px;cursor:pointer}
@media (max-width:700px){.c-send{width:100%;justify-content:center}.c-panel{padding:24px 22px}}

/* Glossary */
.gl-wrap{padding-bottom:72px}
.gl-intro{max-width:760px;margin-bottom:28px;font-size:19px}
.gl-intro p{margin:0 0 14px}
.gl-az ul{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.gl-az a,.gl-az .gl-off{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #cfc9e3;font-weight:700;text-decoration:none;color:#18113c;background:#fff}
.gl-az a:hover{background:#f0ecf8}
.gl-az .gl-off{color:#6b6685;background:#f6f4fa;border-color:#e4e0ef}
.gl-find{margin-bottom:32px;max-width:520px}
.gl-find label{display:block;font-weight:700;margin-bottom:8px}
.gl-find input{width:100%;min-height:48px;padding:8px 12px;font:inherit;border:2px solid #18113c;background:#fff}
.gl-count{margin:8px 0 0;min-height:1.4em;color:#4a4566}
.gl-group{margin-bottom:36px;scroll-margin-top:24px}
.gl-group h2{margin:0 0 12px;padding-bottom:8px;border-bottom:3px solid #4b286d;font-size:32px;color:#18113c}
.gl-group dl{margin:0}
.gl-item{padding:14px 0;border-bottom:1px solid #e4e0ef}
.gl-item dt{font-weight:700;color:#18113c;font-size:19px}
.gl-item dd{margin:4px 0 0;max-width:760px}
.gl-item[hidden],.gl-group[hidden]{display:none}
@media (max-width:600px){.gl-az a,.gl-az .gl-off{min-width:40px;min-height:44px}}

@media (max-width:420px){
  .bar{gap:8px;padding:10px 12px}
  .menu-btn{padding:0 14px;gap:8px}
  .logo img{height:38px}
}

/* Annual review and accounts */
.ar-intro{max-width:704px;margin-bottom:28px;font-size:19px}
.ar-intro p{margin:0 0 14px}
.tl-head>div{flex:1 1 440px;min-width:0}
.ar-acc{max-width:704px;border-top:3px solid var(--purple)}
.ar-item{border-bottom:1px solid #cfc9e3}
.ar-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:12px 4px;cursor:pointer;list-style:none;font-size:26px;font-weight:800;letter-spacing:-.5px;color:#18113c}
.ar-item summary::-webkit-details-marker{display:none}
.ar-item summary:hover{background:#f4effa}
.ar-chev{flex:none;color:var(--purple);transition:transform .2s}
.ar-item[open] .ar-chev{transform:rotate(180deg)}
.ar-body{padding:0 4px 24px}
@media (prefers-reduced-motion:reduce){.ar-chev{transition:none}}

/* Pull-down menus */
.navgroup{position:relative}
.navtoggle{display:inline-flex;align-items:center;gap:7px;background:none;border:0;border-bottom:3px solid transparent;font-family:inherit;cursor:pointer}
.navtoggle[data-current]{border-bottom-color:#fff}
.navtoggle svg{transition:transform .15s}
.navtoggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.subnav{position:absolute;top:100%;left:-18px;z-index:30;min-width:270px;margin:0;padding:8px;list-style:none;background:#18113c;border:1px solid rgba(255,255,255,.38);border-radius:18px;box-shadow:0 18px 40px rgba(10,6,36,.45)}
.subnav[hidden]{display:none}
.subnav a{display:flex;align-items:center;min-height:48px;padding:6px 16px;border-radius:12px;color:#fff;font-weight:600;font-size:17px;text-decoration:none}
.subnav a:hover{background:rgba(255,255,255,.14);text-decoration:underline;text-underline-offset:5px}
.subnav a[aria-current]{background:rgba(255,255,255,.18)}
.menu-panel .m-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:58px;padding:0;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.22);color:#fff;font-family:inherit;font-weight:600;font-size:20px;text-align:left;cursor:pointer}
.menu-panel .m-toggle[aria-expanded="true"] .m-chev{transform:rotate(180deg)}
.m-sub{list-style:none;margin:0;padding:0 0 6px 16px;border-bottom:1px solid rgba(255,255,255,.22)}
.m-sub[hidden]{display:none}
.menu-panel .m-sub a{min-height:50px;font-size:18px;font-weight:500;border-bottom:0}
@media (prefers-reduced-motion:reduce){.navtoggle svg{transition:none}}
.navgroup:last-of-type .subnav{left:auto;right:-8px}

/* Resources */
.rs-intro{max-width:760px;font-size:19px;line-height:1.7;margin:0 0 28px}
.rs-count{margin:0 0 20px;color:var(--muted);font-size:17px}
.rs-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:28px}
.rs-item figure{margin:0;height:100%;display:flex;flex-direction:column;background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.85);box-shadow:0 12px 32px rgba(24,17,60,.12)}
.rs-pic{display:block;background:#efecf7;line-height:0}
.rs-pic img{width:100%;height:260px;object-fit:cover;object-position:top;display:block}
.rs-pic:focus-visible{outline:3px solid var(--accent,#4b286d);outline-offset:-3px}
.rs-item figcaption{padding:14px 16px 4px;font-size:17px;line-height:1.5;font-weight:600}
.rs-tr{padding:6px 16px 14px;font-size:16px}
.rs-tr summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center;color:var(--accent,#4b286d)}
.rs-tr-text{line-height:1.65;white-space:normal}
.rs-old,.rs-empty{margin-top:32px;font-size:18px}
.rs-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}
.rs-card{position:relative;padding:28px;background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.85);border-top:6px solid #4b286d;box-shadow:0 18px 48px rgba(24,17,60,.14);display:flex;flex-direction:column}
.rs-card h2{margin:0 0 10px;font-size:24px;line-height:1.25}
.rs-card h2 a{color:var(--indigo);text-decoration:none}
.rs-card h2 a::after{content:"";position:absolute;inset:0}
.rs-card:hover h2 a{text-decoration:underline}
.rs-card:focus-within{outline:3px solid #4b286d;outline-offset:2px}
.rs-card p{margin:0 0 14px;font-size:17px;line-height:1.55;color:#3d2d52}
.rs-card-go{margin-top:auto!important;font-weight:700;color:#4b286d!important}
.rlb .xdlg-fig{background:#0f0a2a}
.rlb-tr{margin-top:12px;max-height:40vh;overflow:auto;border-top:1px solid #d9d4ea;padding-top:8px}
.rlb-tr h3{margin:0 0 6px;font-size:18px}
.rlb-tr[hidden]{display:none}
.rs-cards{margin-bottom:64px}.rs-grid{margin-bottom:8px}
.side .gl-az a,.side .gl-az .gl-off{min-width:0;padding:0;border-left:1px solid #cfc9e3;font-size:17px}.side .gl-az ul{margin:0;gap:6px}.side .gl-az li{flex:0 0 calc(20% - 5px)}.side .gl-az a:hover{background:#f0ecf8}

/* Imports page (administrators only) */
.imp-all,.imp-card{background:#fff;border:1px solid #e6dcf2;border-top:6px solid #4b286d;padding:28px;margin:0 0 28px;box-shadow:0 12px 32px rgba(24,17,60,.1)}
.imp-all h2,.imp-card h2{margin-top:0}
.imp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;align-items:start;margin-bottom:28px}
.imp-grid .imp-card{margin:0}
.imp-meta{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:16px 0;font-size:16px}
.imp-meta dt{font-weight:700}
.imp-meta dd{margin:0;word-break:break-word}
.imp-form{margin-top:20px}
.imp-check{display:flex;gap:10px;align-items:flex-start;font-size:16px;margin-bottom:16px;line-height:1.5}
.imp-check input{margin-top:5px;width:20px;height:20px;flex:0 0 20px}
.imp-btn{min-height:52px;padding:0 28px;border:0;border-radius:999px;background:#18113c;color:#fff;font-family:inherit;font-weight:700;font-size:18px;cursor:pointer}
.imp-btn:hover{background:#4b286d}
.imp-btn:disabled{opacity:.6;cursor:wait}
.imp-ok{border-left:6px solid #1a6b3c;background:#eef7f1;padding:10px 14px;margin:0 0 12px}
.imp-bad,.imp-alert{border-left:6px solid #b3261e;background:#fdeeed;padding:10px 14px;margin:0 0 12px}
.imp-done{border-left:6px solid #1a6b3c;background:#eef7f1;padding:12px 16px;margin:0 0 28px}
.imp-pre{max-height:320px;overflow:auto;background:#f4effa;padding:14px;font-size:14px;white-space:pre-wrap;word-break:break-word}

/* Testimonies */
.ts-wrap{padding-top:40px;padding-bottom:88px}
.ts-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:0 0 20px}
.ts-tools[hidden]{display:none}
.ts-tools>div{flex:1 1 260px}
.ts-tools label{display:block;font-weight:700;font-size:16px;margin-bottom:6px}
.ts-tools input{width:100%;min-height:52px;padding:0 16px;border:2px solid var(--indigo);border-radius:0;font:inherit;font-size:18px;color:var(--indigo);background:#fff}
.ts-sort{min-height:52px;padding:0 22px;border:2px solid var(--indigo);border-radius:0;background:#fff;color:var(--indigo);font:inherit;font-weight:700;font-size:17px;cursor:pointer}
.ts-sort:hover{background:var(--lilac)}
.ts-count{margin:0 0 20px;font-size:16px;color:var(--muted)}
.ts-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ts-item{display:flex}
.ts-item[hidden]{display:none}
.ts-card{display:flex;flex-direction:column;width:100%;background:#fff;border:1px solid var(--lilac-2);border-top:6px solid var(--purple);box-shadow:0 12px 32px rgba(24,17,60,.1);color:var(--indigo);text-decoration:none}
.ts-card:hover{box-shadow:0 18px 44px rgba(24,17,60,.18);color:var(--indigo)}
.ts-pic{display:block;background:var(--lilac-2);aspect-ratio:9/7;overflow:hidden}
.ts-pic img{display:block;width:100%;height:100%;object-fit:cover}
.ts-ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:64px;font-weight:700;color:var(--purple)}
.ts-body{display:flex;flex-direction:column;flex:1 1 auto;padding:18px 20px 22px}
.ts-name{font-size:22px;font-weight:700;line-height:1.2}
.ts-born{display:block;margin-top:4px;min-height:1.4em;font-size:15px;line-height:1.4;font-style:italic;color:var(--muted)}
.ts-place{display:flex;align-items:center;gap:7px;margin-top:12px;font-size:14px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--purple)}
.ts-line{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;line-clamp:7;overflow:hidden;margin-top:12px;min-height:11.2em;font-size:16px;line-height:1.6;color:#3d2d52}
.ts-go{margin-top:auto;padding-top:20px;font-weight:700;font-size:17px;color:var(--purple)}
.ts-go{padding-top:20px}
.ts-go>.ts-btn{display:flex;align-items:center;justify-content:center;min-height:48px;padding:8px 20px;background:var(--purple);color:#fff;font-weight:700;font-size:18px;line-height:1.2;text-align:center;box-shadow:0 4px 0 var(--indigo);border:0}
.ts-card:hover .ts-go>.ts-btn{background:#3a1d56}
.ts-card:active .ts-go>.ts-btn{transform:translateY(4px);box-shadow:none}
@media (max-width:960px){.ts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.ts-grid{grid-template-columns:minmax(0,1fr)}.ts-line{min-height:0;-webkit-line-clamp:8;line-clamp:8}.ts-born[aria-hidden]{display:none}}
/* A testimony part */
.tp-h1{font-size:52px;line-height:1.1;letter-spacing:-1px}
.tp-born{display:block;margin-top:8px;font-size:18px;font-weight:500;font-style:italic;letter-spacing:0;color:var(--muted)}
.tp-part{display:block;margin-top:8px;font-size:30px;font-weight:600;letter-spacing:0;color:var(--purple)}
.tp-layout .side h2{margin-top:0}
.tp-share{margin-top:28px;padding-top:16px;border-top:1px solid var(--lilac-2)}
.tp-share ul{display:flex;flex-wrap:wrap;gap:8px}
.tp-share li{list-style:none}
.tp-share a.tp-ic{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1.5px solid var(--indigo);border-radius:999px;color:var(--indigo)}
.tp-share a.tp-ic:hover{background:var(--lilac);border-color:var(--purple);color:var(--purple)}
.tp-copied{margin:10px 0 0;font-size:14px;color:var(--muted)}
.tp-meta{margin:0 0 8px;font-size:16px;color:var(--muted)}
.tp-h2{margin:0 0 12px;font-size:28px}
.tp-box{max-width:760px;margin:0 0 40px;padding:24px 28px 28px;background:var(--lilac);border-top:6px solid var(--purple)}
.tp-box-title{margin:0 0 8px;font-size:26px;line-height:1.2}
.tp-box-body{margin:0 0 16px;font-size:18px;color:#3d2d52}
.tp-audio{display:block;width:100%;margin:0}
.tp-video{position:relative;aspect-ratio:16/9;margin:16px 0 0;background:var(--indigo)}
.tp-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tp-transcript{max-width:760px;margin:0 0 32px}
.tp-transcript p{margin:0 0 20px;line-height:1.75}
.tp-transcript .tr-who{color:var(--purple);margin-right:4px}
.tp-pn{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;max-width:760px;margin:0 0 24px;padding-top:24px;border-top:1px solid var(--lilac-2);font-weight:700;font-size:18px}
@media (max-width:760px){.tp-h1{font-size:38px}.tp-part{font-size:24px}}
.imp-wide{margin-bottom:28px}
.imp-wide h3{margin:24px 0 8px;font-size:20px}
.imp-bar{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin:0 0 12px}
.imp-mini{min-height:44px;padding:0 16px;border:2px solid #18113c;border-radius:0;background:#fff;color:#18113c;font-family:inherit;font-weight:600;font-size:15px;cursor:pointer}
.imp-mini:hover{background:#f4effa}
.imp-people{list-style:none;margin:0 0 20px;padding:0;columns:2 340px;column-gap:28px}
.imp-people li{break-inside:avoid;border-bottom:1px solid #e6dcf2}
.imp-people label{display:grid;grid-template-columns:24px 1fr auto;gap:2px 10px;align-items:center;padding:10px 4px;cursor:pointer;font-size:16px}
.imp-people input{width:20px;height:20px}
.imp-pn{font-weight:700}
.imp-ps{grid-column:2;font-size:14px;color:#4a3a5e}
.imp-tag{grid-column:3;grid-row:1;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;background:#f4effa;color:#4b286d;white-space:nowrap}
.imp-tag-imported{background:#fff4d6;color:#6b4a00}
.imp-tag-checked{background:#e3f4ea;color:#1a6b3c}
.imp-res{grid-column:2 / 4;font-size:14px;font-weight:700}
.imp-prog{margin-left:12px;font-size:16px;color:#4a3a5e}
.imp-del{margin-top:24px;border-top:1px solid #e6dcf2;padding-top:16px}
.imp-del summary{cursor:pointer;font-weight:700;color:#b3261e}
.imp-btn-red{background:#b3261e}
.imp-btn-red:hover{background:#8c1c16}
#tp-report .imp-ok,#tp-report .imp-bad{margin:8px 0}
#tp-report ul{margin:6px 0 0;padding-left:20px;font-size:15px}

/* Imports page: full width and tidier */
.imp-page{max-width:1480px;padding-top:40px;padding-bottom:88px}
.imp-page .lead-note{max-width:900px;font-size:18px;margin-bottom:24px}
.imp-page .imp-all{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,520px);gap:8px 40px;align-items:start}
.imp-page .imp-all h2,.imp-page .imp-all>p{grid-column:1}
.imp-page .imp-all .imp-form{grid-column:2;grid-row:1 / span 2;margin-top:0}
.imp-page .imp-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.imp-page .imp-card{display:flex;flex-direction:column;padding:24px}
.imp-page .imp-card h2{font-size:26px}
.imp-page .imp-card>form.imp-form:last-child{margin-top:auto;padding-top:20px}
.imp-page .imp-meta{grid-template-columns:1fr;gap:0}
.imp-page .imp-meta dt{margin-top:10px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.imp-page .imp-meta dd{font-size:16px}
.imp-page .imp-wide{background:#fff;border:1px solid #e6dcf2;border-top:6px solid #4b286d;padding:28px;box-shadow:0 12px 32px rgba(24,17,60,.1)}
.imp-page .imp-people{columns:3 300px}
@media (max-width:1100px){.imp-page .imp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.imp-page .imp-grid{grid-template-columns:minmax(0,1fr)}.imp-page .imp-all{display:block}.imp-page .imp-all .imp-form{margin-top:20px}}

/* Testimony gallery */
.tp-gl-link{margin-top:20px}
.tp-gallery{margin:0 0 40px;max-width:760px}
.tp-thumbs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.tp-thumb{display:block;width:100%;padding:0;border:0;background:var(--lilac-2);cursor:zoom-in;line-height:0}
.tp-thumb img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.tp-thumb:focus-visible{outline:3px solid var(--purple);outline-offset:2px}
.tp-cap{display:block;margin-top:6px;font-size:14px;line-height:1.4;color:var(--muted)}
.tp-lb{border:0;padding:0;max-width:min(94vw,980px);width:100%;background:#fff}
.tp-lb::backdrop{background:rgba(24,17,60,.82)}
.tp-lb figure{margin:0;padding:20px 20px 8px}
.tp-lb img{display:block;max-width:100%;max-height:72vh;margin:0 auto}
.tp-lb figcaption{margin-top:12px;font-size:17px;line-height:1.5;color:var(--indigo)}
.tp-lb figcaption small{display:block;color:var(--muted);font-size:14px}
.tp-lb-nav{display:flex;justify-content:space-between;padding:8px 20px 20px}
.tp-lb-nav button{min-height:44px;padding:0 20px;border:2px solid var(--indigo);background:#fff;color:var(--indigo);font:inherit;font-weight:700;cursor:pointer}
.tp-lb-nav button:hover{background:var(--lilac)}
.tp-lb-x{position:absolute;top:8px;right:8px;width:44px;height:44px;border:0;border-radius:999px;background:#fff;color:var(--indigo);font-size:30px;line-height:1;cursor:pointer}
/* Imports: picture tracking */
.imp-pics{grid-column:2 / 4;display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700}
.imp-pics svg{flex:0 0 auto}
.imp-pics-yes{color:#1a6b3c}
.imp-pics-no{color:#b3261e;background:#fdeeed;padding:3px 10px;font-weight:700}
.imp-pics-no .imp-addpic{color:#b3261e}
.imp-addpic{color:#4b286d;text-decoration:underline;font-weight:700}
.imp-addpic:hover{color:#18113c}
.imp-people li{padding-bottom:10px}
.imp-drop{margin:0 4px 6px 38px;padding:10px 14px;border:2px dashed #b9a3d3;background:#faf7fd;color:#4b286d;font-size:14px;cursor:pointer;display:flex;flex-wrap:wrap;gap:2px 12px;align-items:center}
.imp-drop:hover,.imp-drop:focus-visible,.imp-drop.is-over{border-color:#4b286d;background:#f0e8fa}
.imp-drop:focus-visible{outline:3px solid #4b286d;outline-offset:2px}
.imp-drop-t{font-weight:700}
.imp-drop-s{color:#3d2d52}
.imp-drop-s.is-ok{color:#1a6b3c}.imp-drop-s.is-bad{color:#b3261e}
.imp-gal{margin:28px 0 8px;padding-top:20px;border-top:1px solid #e6dcf2}
.imp-gt{width:100%;border-collapse:collapse;margin:12px 0;font-size:15px}
.imp-gt th,.imp-gt td{text-align:left;padding:8px 10px;border-bottom:1px solid #e6dcf2;vertical-align:top}
.imp-gt th{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#4a3a5e}
.imp-parts{list-style:none;margin:0 4px 8px 38px;padding:0;font-size:14px}
.imp-parts li{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;padding:3px 0;border:0}
.imp-parts a{color:#4b286d;font-weight:600}
.imp-kind{color:#6b5a80}
.imp-pc{margin-left:auto;color:#8a7a9c;font-weight:600}
.imp-pc.is-yes{color:#1a6b3c}
/* Gallery in the side column */
.tp-layout .side{position:static}
.side .tp-gallery{margin:28px 0 0;padding-top:16px;border-top:1px solid var(--lilac-2);max-width:none}
.side .tp-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.side .tp-thumbs li{margin:0}
.side .tp-cap{font-size:13px;line-height:1.35}

/* Testimonies: admin picture focus */
.ts-item{position:relative}
.ts-edit{position:static}
.ts-edit-btn{position:absolute;top:14px;right:10px;z-index:3}
.ts-edit-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:2px solid #fff;border-radius:999px;background:#18113c;color:#fff;cursor:pointer;box-shadow:0 2px 8px rgba(24,17,60,.35)}
.ts-edit-btn:hover,.ts-edit-btn[aria-expanded="true"]{background:#4b286d}
.ts-edit-pop{position:absolute;z-index:4;left:10px;right:10px;bottom:10px;padding:14px;background:#fff;border:2px solid #18113c;box-shadow:0 12px 32px rgba(24,17,60,.3);font-size:14px;color:#18113c}
.ts-edit-pop[hidden]{display:none}
.ts-edit-t{margin:0 0 8px;font-weight:700}
.ts-edit-pop label{display:block;margin:0 0 10px}
.ts-edit-pop input[type=range]{display:block;width:100%;margin-top:4px}
.ts-edit-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:4px 0 0}
.ts-edit-row button{min-height:36px;padding:0 14px;border:2px solid #18113c;background:#18113c;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.ts-edit-row .ts-edit-cancel{background:#fff;color:#18113c}
.ts-edit-msg{margin:8px 0 0;font-size:13px}

/* Testimonies: List / Map tabs and map */
.ts-tabs{display:flex;gap:0;margin:0 0 24px;border-bottom:3px solid #18113c}
.ts-tab{font:inherit;font-weight:700;font-size:1.0625rem;min-height:48px;padding:0 28px;border:2px solid #18113c;border-bottom:0;border-radius:0;background:#fff;color:#18113c;cursor:pointer;margin-right:-2px}
.ts-tab[aria-selected="true"]{background:#18113c;color:#fff}
.ts-tab:hover:not([aria-selected="true"]){background:#f4effa}
.ts-map{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);height:clamp(560px,82vh,960px);border:1px solid #e6dcf2;background:#f4effa;display:flex;align-items:center;justify-content:center;color:#4a3a5e}
.ts-map-help,.ts-map-consent{font-size:.9375rem;color:#4a3a5e;margin:0 0 12px}
.ts-map-consent{margin:12px 0 0}
.ts-map-note,.ts-map-admin{padding:16px 20px;background:#f4effa;border-left:6px solid #4b286d;margin:16px 0}
.ts-map-admin p{margin:0 0 8px}
.ts-map-admin button,.ts-gsave{font:inherit;font-weight:700;min-height:44px;padding:0 16px;border:2px solid #18113c;border-radius:0;background:#fff;color:#18113c;cursor:pointer;margin:0 8px 0 0}
.ts-map-admin button:disabled{opacity:.5;cursor:default}
.ts-gcard{font-family:inherit;color:#18113c;display:flex;flex-direction:column;gap:4px;padding:2px 4px 4px 0}
.ts-gcard img{width:96px;height:96px;object-fit:cover;margin-bottom:6px}
.ts-gcard strong{font-size:1.125rem;line-height:1.2}
.ts-gcard em{font-size:.875rem;color:#4a3a5e}
.ts-gcard a{font-weight:700;color:#4b286d;margin-top:6px}
.ts-gsave{margin-top:8px;min-height:40px}

body:has(.ts-map){overflow-x:clip}

.ts-tabs{scroll-margin-top:16px}

/* Education */
.ed-cards{list-style:none;margin:0 0 56px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
@media (max-width:960px){.ed-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.ed-cards{grid-template-columns:minmax(0,1fr)}}
.ed-card{position:relative;background:#fff;border:1px solid #e6dcf2;border-top:6px solid #4b286d;box-shadow:0 8px 24px rgba(24,17,60,.1);display:flex;flex-direction:column}
.ed-card img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover}
.ed-card-in{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.ed-card h2{margin:0 0 10px;font-size:24px;line-height:1.25}
.ed-card h2 a{color:var(--indigo);text-decoration:none}
.ed-card h2 a::after{content:"";position:absolute;inset:0}
.ed-card:hover h2 a{text-decoration:underline}
.ed-card:focus-within{outline:3px solid #4b286d;outline-offset:2px}
.ed-card p{margin:0 0 12px;font-size:17px;line-height:1.55;color:#3d2d52}
.ed-body{max-width:820px;margin-bottom:32px}
.ed-body.ed-page{max-width:none}
.ed-page>*:not(.ed-cards){max-width:820px}
.ed-body img{max-width:100%;height:auto}
.ed-body h2{margin:40px 0 12px}.ed-body h3{margin:28px 0 10px}
.ed-body ul{padding-left:1.3em}
.ed-body a[href$=".pdf"],.ed-body a[href*="/media/"]{font-weight:700}
.ed-body table{border-collapse:collapse;width:100%}.ed-body td,.ed-body th{border:1px solid #d9cce8;padding:8px 10px;text-align:left;vertical-align:top}
.tl-card .tl-source a{color:var(--purple,#4b286d);text-underline-offset:3px}

/* Podcasts: featured episode, cover-art grid, administrator controls */
.pod-feat{display:flex;flex-wrap:wrap;margin:0 0 40px;background:#fff;border:1px solid #d9cfe8;border-top:8px solid var(--purple);box-shadow:0 10px 30px rgba(24,17,60,.1)}
.pod-feat-art{flex:0 1 340px;min-width:240px;background:#e6dcf2}
.pod-feat-art img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1/1}
.pod-feat-body{flex:1 1 420px;min-width:0;padding:32px 36px;box-sizing:border-box}
.pod-badge{margin:0 0 8px;font-size:14px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--purple)}
.pod-feat h2{margin:0 0 12px;font-size:30px;line-height:1.2;letter-spacing:-.4px}
.pod-feat .pod-desc{margin:0 0 20px}
.pod-box{max-width:none;margin:0 0 16px;padding:18px 22px 20px}
.pod-box .tp-box-title{font-size:19px;margin:0 0 12px}
.pod-box-links{margin:12px 0 0;font-size:16px}
.pod-grid{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;align-items:start}
.pod-card{background:#fff;border:1px solid #d9cfe8;border-top:6px solid #e6dcf2;box-shadow:0 6px 20px rgba(24,17,60,.08)}
.pod-card.is-star{border-top-color:var(--indigo)}
.pod-card article{display:flex;flex-direction:column}
.pod-card-art{position:relative;background:#e6dcf2}
.pod-card-art img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.pod-star{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--indigo);color:#fff;font-size:13px;font-weight:700}
.pod-card-in{padding:20px 22px 22px}
.pod-card h2{margin:0 0 10px;font-size:21px;line-height:1.3}
.pod-card .pod-desc{font-size:16px;line-height:1.55;margin:0 0 14px}
.pod-card .pod-actions{min-width:0}
.pod-card .pod-player{margin-top:14px}
.pod-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 22px;background:#f4effa;border-top:1px solid #e6dcf2}
.pod-feat-body .pod-ctl{margin:16px -36px -32px;padding:12px 36px}
.pod-ctl-btn{font:inherit;font-weight:700;font-size:15px;min-height:44px;padding:0 14px;border:2px solid var(--indigo);border-radius:0;background:#fff;color:var(--indigo);cursor:pointer}
.pod-ctl-btn[aria-pressed="true"]{background:var(--indigo);color:#fff}
.pod-ctl-msg{font-size:14px;color:var(--muted)}

.imp-danger{margin:16px 0;padding:14px 18px;background:#fdf1f1;border-left:6px solid #b3261e}
.imp-danger .imp-btn{background:#b3261e;border-color:#b3261e;color:#fff}

/* Cookies and legal pages */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#f4effa;border-top:4px solid var(--purple);box-shadow:0 -6px 24px rgba(24,17,60,.18);padding:12px 0}
.cookie-banner[hidden]{display:none}
.cb-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 28px}
.cookie-banner p{margin:0;flex:1 1 420px;max-width:760px;font-size:15px;line-height:1.45}
.cb-btns{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.cookie-banner .btn{min-height:44px;padding:0 18px;font-size:15px}
.legal{max-width:760px;margin-bottom:56px}
.legal h2{margin:40px 0 12px}
.legal-date{color:var(--muted);font-size:16px}
.legal table{border-collapse:collapse;width:100%;margin:16px 0}
.legal th,.legal td{border:1px solid #d9cfe8;padding:10px 12px;text-align:left;vertical-align:top;font-size:16px}
.legal th{background:#f4effa}
.cookie-form fieldset{border:0;margin:0 0 16px;padding:0}
.cookie-form legend{font-weight:700;margin-bottom:10px}
.cookie-form label{display:flex;align-items:center;gap:10px;min-height:44px}
.cookie-form input{width:22px;height:22px;accent-color:#4b286d}
.cookie-saved{margin:12px 0 0;font-weight:700}
.tp-yt-ask{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:24px;background:var(--lilac);color:var(--indigo)}
.tp-yt-ask p{margin:0 0 8px}
.ts-gate{padding:28px;background:#f4effa;border-left:6px solid #4b286d;margin:16px 0}
.ts-gate p{margin:0 0 12px}

/* Administrator bar */
.admin-bar{background:var(--indigo);color:#fff;font-size:15px}
.admin-bar-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 24px;min-height:44px}
.admin-bar ul{display:flex;flex-wrap:wrap;gap:0 20px;margin:0;padding:0;list-style:none}
.admin-bar a{display:inline-flex;align-items:center;min-height:44px;color:#fff;font-weight:700}
.admin-bar a:hover{color:#ffdd00}

/* Help and contact */
.help-nav{max-width:760px;margin:0 0 32px;padding:16px 20px;background:#f4effa;border-left:6px solid var(--purple)}
.help-nav p{margin:0 0 6px}
.help-nav ul{margin:0;padding-left:1.2em}
.help-text{max-width:760px;margin-bottom:40px}
.help-text h2{margin:0 0 12px}.help-text h3{margin:28px 0 8px}
#contact{margin:8px 0 16px;scroll-margin-top:16px}
#accessibility{scroll-margin-top:16px}

/* Help and information pages share one side column */
.side .side-toc{margin-top:32px}
.side .side-toc a{font-size:16px;padding:8px 16px 8px 20px;font-weight:400}
.contact-main{max-width:760px}
.legal.content{max-width:760px;margin-bottom:0}
@media (max-width:860px){.side{position:static;flex-basis:100%}}

/* Slider tabs: buttons centre their content, so keep every bar on the same line */
.hero-tabs .htab{display:flex;flex-direction:column;justify-content:flex-start;align-self:stretch}
@media (max-width:860px){
  .side .side-toc{display:none}
  .layout{gap:24px;padding-top:32px}
  .side a{padding:10px 14px 10px 16px;font-size:17px}
}

/* Site health */
.hl-sum{display:flex;flex-wrap:wrap;gap:12px 36px;align-items:center;margin:0 0 28px;padding:18px 24px;background:#fff;border:1px solid #e6dcf2;border-top:6px solid #18113c}
.hl-sum p{margin:0;font-size:18px}
.hl-num{display:inline-block;min-width:44px;padding:2px 10px;margin-right:6px;font-size:28px;font-weight:800;text-align:center}
.hl-num.hl-bad{background:#fdeeed;color:#8a1c15}.hl-num.hl-warn{background:#fff4d6;color:#6b4a00}.hl-num.hl-ok{background:#eef7f1;color:#14532d}
.hl-run{display:inline-flex;align-items:center;text-decoration:none}
.hl-list{list-style:none;margin:0;padding:0}
.hl-item{display:grid;grid-template-columns:92px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid #eee6f6}
.hl-item p{margin:4px 0 0;font-size:16px}
.hl-tag{align-self:start;text-align:center;font-size:13px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:5px 6px}
.hl-ok .hl-tag{background:#eef7f1;color:#14532d}.hl-warn .hl-tag{background:#fff4d6;color:#6b4a00}.hl-bad .hl-tag{background:#fdeeed;color:#8a1c15}.hl-info .hl-tag{background:#eef0fb;color:#2b2f77}
.hl-fix{color:#4a3a5e}
.hl-scroll{overflow-x:auto}
.hl-table{border-collapse:collapse;width:100%;font-size:15px}
.hl-table th,.hl-table td{border-bottom:1px solid #e6dcf2;padding:10px 12px;text-align:left;vertical-align:top}
.hl-table thead th{background:#f4effa;white-space:nowrap}
.hl-row-warn td:nth-child(4){color:#6b4a00;font-weight:600}
.hl-plain{margin:0 0 12px;padding-left:1.3em}.hl-plain li{margin-bottom:8px}
@media (max-width:600px){.hl-item{grid-template-columns:1fr}.hl-tag{justify-self:start;padding:4px 10px}}

/* Exhibition story extras: dates, audio, quote, link */
.xdlg-dates,.xstory-dates{margin:0 0 12px;font-weight:700;letter-spacing:1px;color:var(--muted)}
.xdlg-audio{margin:0 0 16px}.xdlg-audio audio,.xstory-audio{width:100%;max-width:520px;display:block;margin:0 0 12px}
.xdlg-text blockquote,.xstory-text blockquote{margin:16px 0;padding:6px 0 6px 18px;border-left:6px solid var(--purple);font-size:1.12em;font-style:italic}
.xdlg-text blockquote p,.xstory-text blockquote p{margin:0}
.xdlg-link{margin:20px 0 0}.xdlg-link .btn,.xstory-link a{display:inline-flex}

/* ---- Education pages: GOV.UK-style accordion, file links, tidy tables ---- */
.ed-body .ed-intro{margin-bottom:28px}
.gov-acc{margin:32px 0}
.gov-acc-controls{text-align:right;margin:0 0 8px}
.gov-acc-all{min-height:44px;padding:6px 4px;border:0;background:none;color:var(--purple);font:inherit;font-weight:700;font-size:18px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.gov-acc-all:hover{color:var(--indigo)}
.gov-acc-section{border-top:1px solid #b9aed0}
.gov-acc-section:last-child{border-bottom:1px solid #b9aed0}
.ed-body .gov-acc-h{margin:0;font-size:inherit}
.gov-acc-btn{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:14px 0;border:0;background:none;color:var(--indigo);font:inherit;font-weight:700;font-size:24px;line-height:1.3;text-align:left;cursor:pointer}
.gov-acc-btn:hover{background:#f4effa}
.gov-acc-btn:focus-visible{outline:3px solid #ffdd00;outline-offset:0;background:#ffdd00;box-shadow:0 -2px #ffdd00,0 4px #18113c}
.gov-acc-toggle{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;font-size:17px;font-weight:600;color:var(--purple)}
.gov-acc-toggle::before{content:"Show";text-decoration:underline;text-underline-offset:3px}
.gov-acc-btn[aria-expanded="true"] .gov-acc-toggle::before{content:"Hide"}
.gov-acc-toggle::after{content:"";width:10px;height:10px;border-right:3px solid currentColor;border-bottom:3px solid currentColor;transform:rotate(45deg) translate(-2px,-2px)}
.gov-acc-btn[aria-expanded="true"] .gov-acc-toggle::after{transform:rotate(-135deg) translate(-2px,-2px)}
.gov-acc-content{padding:4px 0 28px}
.gov-acc-content>:first-child{margin-top:0}
.gov-acc-content[hidden]{display:none}
@media (max-width:620px){.gov-acc-btn{font-size:20px}.gov-acc-toggle::before{content:none}.gov-acc-btn[aria-expanded="true"] .gov-acc-toggle::before{content:none}}
@media print{.gov-acc-content[hidden]{display:block}.gov-acc-controls,.gov-acc-toggle{display:none}}

.ed-file{font-weight:700}
.ed-file-meta{color:#4a3a5e;font-size:.9em;white-space:nowrap}
.ed-file-missing{color:inherit}
.ed-body .ed-downloads{list-style:none;margin:16px 0;padding:0;border-top:1px solid #d9cfe8}
.ed-downloads li{padding:14px 0;border-bottom:1px solid #d9cfe8}
.ed-body p.ed-download{margin:16px 0;padding:16px 20px;background:#f4effa;border-left:6px solid var(--purple)}
.ed-body .ed-table{overflow-x:auto;margin:20px 0}
.ed-body .ed-table table{min-width:520px}
.ed-body figure{margin:24px 0}.ed-body figcaption{font-size:16px;color:#4a3a5e;margin-top:6px}
.ed-body.ed-page{padding-top:40px;padding-bottom:24px}

/* Testimonies title band: a small random portrait */
.title-band .th{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:24px 48px}
.th-text{flex:1 1 auto;min-width:0}
.th-pic{flex:0 0 auto;margin:0;width:150px}
.th-pic a{display:block;text-decoration:none;color:var(--indigo)}
.th-pic img{display:block;width:150px;height:auto;aspect-ratio:13/15;object-fit:cover;border:4px solid #fff;box-shadow:0 8px 24px rgba(24,17,60,.2)}
.th-pic figcaption{margin-top:8px;font-size:15px;font-weight:700;line-height:1.3;text-decoration:underline;text-underline-offset:3px}
.th-pic a:hover figcaption{color:var(--purple)}
@media (max-width:620px){.title-band .th{flex-wrap:wrap}.th-pic{width:110px}.th-pic img{width:110px}}


/* ---- podcasts: list layout, sticky player (0.20.0) ---- */
.pod-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:20px}
.pod-item{background:#fff;border:1px solid #d9cfe8;border-left:8px solid var(--purple);padding:28px 32px}
.pod-item.is-star{border-left-color:var(--indigo)}
.pod-item .pod-ctl,.pod-feat-body .pod-ctl{margin:20px -32px -28px;padding:12px 32px}
.pod-feat-card .pod-row{display:block}
.pod-feat-card .pod-actions{margin-top:18px;min-width:0}
.pod-feat-card h2{font-size:30px}
.pod-actions .pill-play[hidden]{display:none}
.pod-actions .pill-play.is-playing{background:var(--indigo)}
.pod-dl{flex:1 1 100%;font-size:15px;margin-top:2px}
.pod-text .pod-short{margin:0 0 4px}
.pod-text:has(details[open]) .pod-short{display:none}
.pod-more-shut{display:none}
.pod-more[open] .pod-more-open{display:none}
.pod-more[open] .pod-more-shut{display:inline}
.pod-more summary{margin-top:0}
.pod-admin{background:#eef3fb;border:2px solid #2a5aa8;padding:16px 20px;margin:0 0 28px}
.pod-admin p{margin:0 0 10px;font-size:17px}
.pod-admin p:last-child{margin:0}
.pod-search-box{position:relative}
.pod-suggest{position:absolute;left:0;right:0;top:100%;z-index:30;margin:0;padding:0;list-style:none;background:#fff;border:2px solid var(--indigo);border-top:0;max-height:300px;overflow-y:auto;box-shadow:0 10px 24px rgba(24,17,60,.18)}
.pod-suggest li{padding:12px 16px;font-size:17px;line-height:1.35;cursor:pointer;border-bottom:1px solid var(--lilac-2)}
.pod-suggest li:last-child{border-bottom:0}
.pod-suggest li:hover,.pod-suggest li[aria-selected="true"]{background:var(--lilac);color:var(--indigo)}
.pod-mini{border:1px solid #d9cfe8;border-left:8px solid var(--purple);background:#fff;padding:16px 20px;margin:24px 0}
.pod-mini-title{margin:0 0 10px;font-weight:700;font-size:19px}
.pod-mini audio{display:block;width:100%}
.pod-sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--indigo);color:#fff;box-shadow:0 -8px 24px rgba(10,6,36,.3)}
.pod-sticky[hidden]{display:none}
.pod-sticky-in{display:flex;align-items:center;gap:16px 24px;max-width:var(--wrap);margin:0 auto;padding:12px 32px 6px;box-sizing:border-box}
.pod-sticky-art{width:56px;height:56px;object-fit:cover;flex:0 0 auto}
.pod-sticky-art[hidden]{display:none}
.pod-sticky-info{flex:1 1 auto;min-width:0}
.pod-sticky-label{margin:0;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#d9cfe8}
.pod-sticky-title{margin:0;font-size:17px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pod-sticky-time{margin:0;font-size:14px;color:#d9cfe8;font-variant-numeric:tabular-nums}
.pod-sticky-ctl,.pod-sticky-end{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.pod-pbtn{font:inherit;font-weight:700;font-size:15px;min-height:44px;min-width:44px;padding:0 12px;border:2px solid #fff;border-radius:0;background:transparent;color:#fff;cursor:pointer}
.pod-pbtn:hover{background:#fff;color:var(--indigo)}
.pod-pbtn-main{font-size:18px;min-width:56px}
.pod-pbtn:focus-visible,.pod-seek input:focus-visible{outline:3px solid #fff;outline-offset:2px}
.pod-seek{padding:0 32px 10px;max-width:var(--wrap);margin:0 auto;box-sizing:border-box}
.pod-seek input{display:block;width:100%;height:24px;margin:0;accent-color:#fff;cursor:pointer}
@media (max-width:860px){
  .pod-row{display:block}
  .pod-actions{margin-top:16px;min-width:0}
  .pod-item{padding:22px 20px}
  .pod-item .pod-ctl,.pod-feat-body .pod-ctl{margin:16px -20px -22px;padding:12px 20px}
  .pod-sticky-in{flex-wrap:wrap;padding:10px 16px 4px}
  .pod-sticky-info{flex:1 1 calc(100% - 80px)}
  .pod-sticky-ctl{order:3}
  .pod-sticky-end{order:4;margin-left:auto}
  .pod-seek{padding:0 16px 8px}
}

/* Testimonies filters: country and camps */
.ts-tools .ts-sel{flex:0 1 220px}
.ts-tools select{display:block;width:100%;min-height:52px;padding:0 12px;border:2px solid var(--indigo);border-radius:0;background:#fff;color:var(--indigo);font:inherit;font-size:18px;box-sizing:border-box}
.ts-camps{display:block;margin-top:8px;font-size:14px;line-height:1.4;color:var(--purple);font-weight:600}
.ts-camps-l{text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:800}

/* Testimony part: small random picture in the title band */
.th-photo img{width:auto;height:auto;max-width:150px;max-height:190px;aspect-ratio:auto;object-fit:contain;background:#fff}
@media (max-width:620px){.th-photo img{max-width:110px;max-height:140px}}

/* Beta label on the Testimonies map */
.ts-beta{display:inline-block;margin-left:6px;padding:2px 8px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--purple);color:#fff;vertical-align:middle}
.ts-tab[aria-selected="true"] .ts-beta{background:#fff;color:var(--indigo)}
.ts-map-beta{margin:0 0 12px;padding:12px 16px;background:#f4effa;border-left:6px solid var(--purple);font-size:1rem}

/* Education: notice banner */
.ed-banner{margin:24px 0 8px;border:2px solid var(--purple);background:#fff}
.ed-banner-h{margin:0;padding:8px 20px;background:var(--purple);color:#fff;font-size:18px;line-height:1.3}
.ed-banner-p{margin:0;padding:16px 20px;font-size:19px;font-weight:700;color:var(--indigo)}

/* Education: file viewer */
html.edv-open{overflow:hidden}
.edv{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:#fff}
.edv[hidden]{display:none}
.edv-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 20px;background:var(--indigo);color:#fff;border-bottom:6px solid var(--purple)}
.edv-brand{margin:0;line-height:0}.edv-brand img{display:block;height:30px;width:auto}
.edv-title{margin:0;font-size:18px;flex:1 1 200px;color:#fff;overflow-wrap:anywhere}
.edv-dl,.edv-close{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;font:inherit;font-weight:700;font-size:16px;cursor:pointer;border:2px solid #fff;background:transparent;color:#fff;text-decoration:none}
.edv-close{background:#fff;color:var(--indigo)}
.edv-dl:hover,.edv-close:hover{background:#ffdd00;border-color:#ffdd00;color:var(--indigo)}
.edv-dl:focus-visible,.edv-close:focus-visible,.edv-frame:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}
.edv-load{margin:0;padding:16px 20px;color:var(--indigo)}
.edv-load[hidden]{display:none}
.edv-frame{flex:1;width:100%;border:0;background:#f4effa}

/* Home: Poppy Scotland box */
.hp-poppy{background:#c4171a;color:#fff;padding:72px 0}
.hp-poppy-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.hp-poppy-fig{margin:0}
.hp-poppy-fig img{display:block;width:100%;height:auto;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.hp-poppy-fig figcaption{margin-top:12px;text-align:center;font-size:17px;color:#fff}
.hp-poppy h2{margin:0;color:#fff;font-size:clamp(28px,3.4vw,40px);line-height:1.2}
.hp-poppy hr{border:0;border-top:2px solid #fff;margin:24px 0}
.hp-poppy p{margin:0 0 28px;font-size:20px;line-height:1.6;color:#fff}
.hp-poppy-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;max-width:100%;padding:18px 24px;background:#fff;color:var(--indigo);font-weight:700;font-size:18px;line-height:1.4;text-decoration:none;border-bottom:4px solid var(--indigo)}
.hp-poppy-btn>span{text-wrap:balance}.hp-poppy-btn svg{flex:none;transition:transform .15s}.hp-poppy-btn:hover svg{transform:translateX(4px)}
.hp-poppy-btn:hover{background:#ffdd00;color:var(--indigo)}
.hp-poppy-btn:focus-visible{outline:3px solid #ffdd00;outline-offset:3px}
@media (max-width:860px){.hp-poppy{padding:48px 0}.hp-poppy-in{grid-template-columns:1fr;gap:28px}.hp-poppy-btn{display:flex;text-align:left}}

/* Game player: full screen, waiting text, small screens */
.game-wait{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;padding:24px;text-align:center;color:#fff;font-size:19px}
.game-wait a{color:#fff;text-decoration:underline;margin-left:.4em}
.game-tools{margin:12px 0 0}
.game-tools[hidden]{display:none}
.game-full{min-height:44px;padding:0 20px;border:2px solid var(--purple);background:#fff;color:var(--purple);font-family:inherit;font-weight:700;font-size:17px;line-height:1;cursor:pointer}
.game-full:hover{background:var(--purple);color:#fff}
.game-full:focus-visible,.game-alt a:focus-visible,.game-mobile-link:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}
.game-mobile{display:none}
@media (max-width:700px){
  .game-frame{aspect-ratio:auto;min-height:0}
  .game-start{position:static;padding:24px 20px;min-height:0;background:#2c1a55}
  .game-start::before{display:none}
  .game-btn{display:none}
  .game-mobile{display:block;margin:0;color:#fff;font-size:18px;line-height:1.5}
  .game-mobile-link{display:inline-block;margin-top:14px;padding:12px 20px;background:#fff;color:var(--indigo);font-weight:700;text-decoration:none}
}

/* Home: Get in touch cards */
.hp-contact{padding:64px 0}
.hp-contact .hp-contact-p{max-width:760px;margin:0 0 28px}
.hp-contact h2{margin-bottom:12px}
.hp-cc{list-style:none;margin:0 0 32px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hp-cc a{display:flex;flex-direction:column;gap:8px;height:100%;box-sizing:border-box;padding:24px;background:#fff;border:2px solid var(--purple);border-bottom-width:6px;color:var(--indigo);text-decoration:none}
.hp-cc a:hover{background:#fff;border-color:var(--indigo)}
.hp-cc a:hover .hp-cc-t{text-decoration:underline}
.hp-cc a:focus-visible{outline:3px solid var(--indigo);outline-offset:3px}
.hp-cc-t{font-size:21px;font-weight:700;line-height:1.3;color:var(--purple)}
.hp-cc-x{font-size:17px;line-height:1.5;color:#3d2d52}
.hp-cc-all{margin:0}
@media (max-width:900px){.hp-cc{grid-template-columns:1fr}.hp-contact{padding:48px 0}}

/* Story pages: text one side, picture the other */
.sp-sec{padding:72px 0;background:#fff;color:var(--indigo)}
.sp-sec--lilac{background:#f4effa}
.sp-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.sp-text h2{margin:0 0 20px;font-size:clamp(28px,3.4vw,38px);line-height:1.2}
.sp-text p{margin:0 0 20px;font-size:19px;line-height:1.65;max-width:62ch}
.sp-text .b-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.sp-pic{margin:0;justify-self:center;width:100%;max-width:520px}
.sp-pic a{display:block}
.sp-pic a:focus-visible{outline:3px solid var(--indigo);outline-offset:4px}
.sp-pic img{display:block;width:100%;height:auto}
.sp-pic--circle img{border-radius:50%;aspect-ratio:1/1;object-fit:cover}
@media (max-width:860px){.sp-sec{padding:48px 0}.sp-in{grid-template-columns:1fr;gap:32px}.sp-pic{order:-1;max-width:420px}}

/* Education pages: readable width, tag line, notes */
.ed-page>*:not(.ed-cards){max-width:900px}
.ed-body p.ed-tags{margin:16px 0;padding:10px 16px;border-left:4px solid var(--purple);background:#f4effa;font-style:normal;font-size:17px;color:#3d2d52}
.ed-body p.ed-tags em,.ed-body p.ed-tags i{font-style:normal}
.ed-body .ed-oldsite{display:block;margin-top:6px;font-size:15px;color:#7a1d1d}
.ed-body p.ed-download .ed-file{display:inline}

/* Education: two columns */
.ed-main{min-width:0}
.ed-main .ed-page{padding-top:0;padding-bottom:0}
.ed-main .ed-cards{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
@media (max-width:620px){.ed-main .ed-cards{grid-template-columns:minmax(0,1fr)}}
.ed-main .rs-intro{margin-bottom:28px}
.ed-card-band{height:56px;background:#f4effa;border-bottom:1px solid #e6dcf2}
.side .side-sub{margin:0 0 6px;padding:0 0 0 14px;list-style:none}
.side .side-sub a{font-size:16px;padding:8px 12px 8px 16px;font-weight:400}
.side a.is-parent{font-weight:700}
.ed-page>*:not(.ed-cards){max-width:none}

/* Video lightbox */
html.lb-open{overflow:hidden}
.lb{position:fixed;inset:0;z-index:1000;background:rgba(24,17,60,.88);display:flex;align-items:center;justify-content:center;padding:16px}
.lb[hidden]{display:none}
.lb-in{width:100%;max-width:960px;background:#fff;border-top:6px solid var(--purple);max-height:100%;overflow:auto}
.lb-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--indigo);color:#fff}
.lb-title{margin:0;flex:1;font-weight:700;font-size:18px;overflow-wrap:anywhere}
.lb-close{min-height:44px;padding:0 18px;font:inherit;font-weight:700;font-size:16px;cursor:pointer;border:2px solid #fff;background:#fff;color:var(--indigo)}
.lb-close:hover{background:#ffdd00;border-color:#ffdd00}
.lb-close:focus-visible,.lb .btn:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}
.lb-video{position:relative;aspect-ratio:16/9;background:#000}
.lb-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.lb-ask{padding:24px}
.lb-ask p{margin:0 0 16px}
.lb-ask-btns{display:flex;flex-wrap:wrap;gap:12px}
.ed-wide .rs-intro{margin-bottom:28px}
.ed-wide .ed-cards{margin-top:32px}
.ed-toplink{margin:0 0 28px}

/* Exhibition boards: nearly the full width of the screen */
.wrap.xwrap{max-width:none;width:100%;box-sizing:border-box;padding-left:max(16px,2vw);padding-right:max(16px,2vw)}

/* Timeline advert inside the testimonies list */
.ts-promo{grid-column:1/-1;margin:16px 0}
.ts-promo[hidden]{display:none}
.ts-promo-in{background:var(--indigo);color:#fff;border-top:8px solid var(--purple);padding:40px max(24px,4vw)}
.ts-promo-k{margin:0 0 8px;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#d9c8ee}
.ts-promo h2{margin:0 0 12px;font-size:32px;line-height:1.2;color:#fff;max-width:760px}
.ts-promo p{max-width:700px}
.ts-promo-in>p:not(.ts-promo-k){margin:0 0 24px;font-size:20px;line-height:1.5;color:#e6dcf2}
.ts-promo-btn{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;background:#fff;color:var(--indigo);font-weight:700;font-size:18px;text-decoration:none;box-shadow:0 4px 0 #b9a3d3}
.ts-promo-btn:hover{background:#f4effa}
.ts-promo-btn:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}

/* Red title band (Poppy Scotland) */
.title-band--red{background:#c4171a;border-bottom-color:#9d1214;color:#fff}
.title-band--red h1,.title-band--red .lead,.title-band--red .crumbs,.title-band--red .crumbs a,.title-band--red .crumbs span{color:#fff}
.title-band--red .crumbs a:focus-visible{outline-color:#ffdd00}
.tb-logo-row{display:flex;align-items:center;justify-content:space-between;gap:24px 48px}
.tb-main{flex:1 1 auto;min-width:0}
.tb-logo{flex:0 0 auto;background:#fff;padding:20px 24px;box-shadow:0 8px 24px rgba(60,0,0,.25)}
.tb-logo img{display:block;width:200px;height:auto}
@media (max-width:760px){.tb-logo-row{flex-wrap:wrap}.tb-logo img{width:150px}}
.ed-card-logo{aspect-ratio:8/5;display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid #e6dcf2}.ed-card-logo img{display:block;width:62%;max-width:260px;height:auto}
.ed-card .ed-card-logo img{width:62%;max-width:260px;height:auto;aspect-ratio:auto;object-fit:contain}
.ed-body img{max-width:100%;height:auto}.ed-photo{margin:24px 0}.ed-photo img{display:block;width:100%;height:auto}.ed-photo figcaption{font-size:16px;color:#4a3a5e;margin-top:6px}

.ts-info-btn{display:block;margin-top:10px;padding:10px 14px;background:#4b286d;color:#fff!important;font-weight:700;text-align:center;text-decoration:none!important;box-shadow:0 3px 0 #18113c}
.ts-info-btn:hover{background:#3a1d56}

/* Admin centre */
.ac-list,.ac-check{list-style:none;margin:0;padding:0}
.ac-tool{display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:16px 0;border-top:1px solid #e6dcf2}
.ac-tool:first-child{border-top:0}
.ac-tool p{margin:4px 0 0;max-width:62ch}
.ac-acts{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ac-acts form{margin:0}
.ac-btn{display:inline-block;padding:10px 16px;background:#4b286d;color:#fff;border:0;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:0 3px 0 #18113c}
.ac-btn:hover{background:#3a1d56;color:#fff}
.ac-sec{background:#fff;color:#4b286d;border:2px solid #4b286d;box-shadow:none}
.ac-sec:hover{background:#f3ecfa;color:#18113c}
.ac-btn:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}
.ac-st{font-weight:700}.ac-ok{color:#0a5c2f}.ac-warn{color:#8a4b00}
.ac-check li{padding:8px 0}

/* Podcasts v0.25.32: latest-episode panel and a row list with artwork */
.pod-feat{background:#f3ecfa;border:1px solid #e6dcf2;border-left:8px solid var(--purple);border-top:1px solid #e6dcf2;box-shadow:none;margin:0 0 36px;padding:28px 32px;gap:24px 32px;align-items:flex-start}
.pod-feat-art{flex:0 0 160px;width:160px;min-width:0;height:160px;background:var(--purple)}
.pod-feat-art img{height:160px;aspect-ratio:1/1}
.pod-feat-body{padding:0;flex:1 1 420px}
.pod-feat h2{font-size:28px;margin:0 0 10px}
.pod-text-full p{margin:0 0 12px;font-size:18px;line-height:1.6;color:#3d2d52;max-width:720px}
.pod-row-feat{align-items:flex-start}
.pod-feat .pod-actions{margin-top:8px}
.pod-feat-body .pod-ctl{margin:16px 0 0;padding:12px 0;background:transparent}
.pod-earlier{margin:0 0 12px;font-size:26px}
.pod-list{gap:0;border-top:2px solid var(--indigo)}
.pod-item{border:0;border-bottom:1px solid #d9cfe8;border-left:0;padding:24px 0;background:transparent}
.pod-item.is-star{background:#faf6fd}
.pod-item .pod-row{align-items:center;flex-wrap:wrap;gap:20px 28px;justify-content:flex-start}
.pod-thumb{flex:0 0 112px;width:112px;height:112px;background:#e6dcf2;color:var(--purple);display:flex;align-items:center;justify-content:center;overflow:hidden}
.pod-thumb img{display:block;width:112px;height:112px;object-fit:cover}
.pod-item .pod-main{flex:1 1 320px}
.pod-item h2{font-size:24px;margin:0 0 8px}
.pod-item .pod-meta{color:var(--purple);font-weight:700}
.pod-item .pod-actions{flex:0 0 190px;flex-direction:column;flex-wrap:nowrap;gap:10px}
.pod-item .pod-actions .pill-out{flex:0 0 auto}
.pod-item .pod-ctl{margin:12px 0 0;padding:12px 0;background:transparent}
@media (max-width:640px){.pod-feat{padding:20px}.pod-thumb{flex-basis:72px;width:72px;height:72px}.pod-thumb img{width:72px;height:72px}.pod-item .pod-actions{flex:1 1 100%}}
.pod-feat .pod-actions{flex-direction:row;flex-wrap:wrap;min-width:0}
.pod-feat .pod-actions .pill{flex:0 0 auto;padding:0 22px}

.pod-tag{display:inline-block;margin-right:8px;padding:2px 8px;background:var(--purple);color:#fff;font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}

/* Podcasts v0.25.35: slim dark hero with listen links */
.pod-hero2{background:var(--indigo);color:#fff}
.pod-hero2 .wrap{padding-top:36px;padding-bottom:40px}
.pod-hero2 .crumbs,.pod-hero2 .crumbs a,.pod-hero2 .crumbs span{color:#e6dcf2}
.pod-hero2 .crumbs a{text-decoration:underline}
.pod-hero2 h1{margin:12px 0 12px;font-size:48px;line-height:1.1;letter-spacing:-1px;color:#fff}
.pod-hero2-text{margin:0 0 22px;max-width:760px;font-size:20px;line-height:1.55;color:#e6dcf2}
.pod-hero2-links{margin:0;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pod-hero2-label{font-weight:700;color:#e6dcf2;margin-right:4px}
.pod-hero2-btn{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;background:#fff;color:var(--indigo);font-weight:700;text-decoration:none;border:2px solid #fff;box-shadow:0 3px 0 rgba(0,0,0,.35)}
.pod-hero2-btn:hover{background:#f3ecfa}
.pod-hero2-btn:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}
@media (max-width:640px){.pod-hero2 h1{font-size:36px}}

/* Podcasts v0.25.36: Subscribe call-to-action inside the hero */
.pod-hero2-row{display:flex;flex-wrap:wrap;gap:32px 56px;align-items:center}
.pod-hero2-main{flex:1 1 440px;min-width:0}
.pod-hero2-text{margin-bottom:0}
.pod-sub{flex:0 1 380px;min-width:280px;box-sizing:border-box;background:#fff;color:var(--indigo);padding:24px 26px 26px;border-top:6px solid var(--purple);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.pod-sub h2{margin:0 0 6px;font-size:23px;line-height:1.25;color:var(--indigo)}
.pod-sub p{margin:0 0 16px;font-size:16px;line-height:1.5;color:#3d2d52}
.pod-sub-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.pod-sub-btn{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 18px;box-sizing:border-box;background:#fff;color:var(--indigo);border:2px solid var(--purple);font-weight:700;font-size:18px;text-decoration:none}
.pod-sub-btn svg{flex:0 0 auto;color:var(--purple)}
.pod-sub-btn:hover{background:#f3ecfa;color:var(--indigo)}
.pod-sub-btn:focus-visible{outline:3px solid #ffdd00;outline-offset:2px}

/* Design section (/design) */
.dz-page{padding-top:40px;padding-bottom:88px}
.dz-toc{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 32px;padding:0 0 16px;border-bottom:2px solid var(--indigo)}
.dz-toc a{font-weight:700}
.dz-sec{margin:0 0 56px}
.dz-sec>h2{margin:0 0 8px;font-size:34px}
.dz-note{margin:0 0 16px;color:var(--muted);font-size:17px}
.dz-demo{margin:24px 0}
.dz-demo h3,.dz-sec h3{margin:0 0 8px;font-size:21px}
.dz-sample{padding:24px;border:1px solid #d9cfe8;display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.dz-sample>h1,.dz-sample>h2,.dz-sample>h3,.dz-sample>p{flex:1 1 100%;margin:0}
.dz-sample .title-band,.dz-sample .imp-card,.dz-sample .pod-search{flex:1 1 100%}
.dz-sample .pod-search{margin:0}
.dz-dark{background:var(--indigo);border-color:var(--indigo);margin:8px 0 0}
.dz-code{margin:0;padding:16px 18px;background:#f4effa;border:1px solid #e6dcf2;border-top:0;overflow-x:auto;font-size:15px;line-height:1.5;white-space:pre}
.dz-code code,.dz-note code,.dz-rules code,.dz-cols code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.92em}
.dz-sw{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.dz-sw li{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #d9cfe8}
.dz-chip{display:block;height:56px;border:1px solid rgba(24,17,60,.2)}
.dz-sw span:last-child{font-size:15px;color:var(--muted)}
.dz-rules{margin:0;padding-left:22px}.dz-rules li{margin:0 0 8px}
.dz-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-bottom:16px}
.dz-cols ul{list-style:none;margin:0;padding:0;font-size:16px}.dz-cols li{padding:3px 0}

/* Design section v0.25.38: two columns, page-template sketches, footer cog */
.dz-layout{padding-top:40px;padding-bottom:88px}
.dz-main{min-width:0;flex:1 1 560px}
.dz-side h2:not(:first-child){margin-top:24px}
.dz-lead{margin:0 0 24px;font-size:21px;line-height:1.55;color:var(--muted);max-width:720px}
.dz-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.dz-cards a{display:flex;flex-direction:column;gap:6px;height:100%;padding:20px 22px;background:#fff;border:1px solid #d9cfe8;border-top:6px solid var(--purple);text-decoration:none;color:var(--indigo)}
.dz-cards a:hover{background:var(--lilac)}
.dz-cards strong{font-size:20px;color:var(--purple)}
.dz-icons{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}
.dz-icons li{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;border:1px solid #d9cfe8;font-size:14px}
.dz-tpl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px}
.dz-tpl-item{display:flex;flex-wrap:wrap;gap:20px 28px;padding:20px;background:#fff;border:1px solid #d9cfe8;border-left:6px solid var(--purple)}
.dz-tpl-text{flex:1 1 280px;min-width:0}
.dz-tpl-text h2{margin:0 0 8px;font-size:22px}
.dz-tpl-text p{margin:0 0 8px;font-size:17px;line-height:1.5;color:#3d2d52}
.dz-tpl-meta{font-size:15px!important;color:var(--muted)!important}
.dz-tpl-meta code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.95em}
.wf{flex:0 0 200px;width:200px;min-height:150px;padding:8px;background:#fff;border:2px solid var(--indigo);display:flex;flex-direction:column;gap:6px}
.wf i{display:block;background:var(--lilac-2)}
.wf .wf-band{height:22px;background:var(--lilac);border-bottom:2px solid var(--lilac-2)}
.wf .wf-hero{height:44px;background:var(--indigo)}
.wf .wf-dark{height:36px;background:var(--indigo)}
.wf .wf-line{height:6px;background:#cfc3e2}.wf .wf-short{width:60%}
.wf .wf-input{height:12px;border:2px solid var(--indigo);background:#fff}
.wf .wf-card{height:26px}
.wf .wf-grid{display:grid;gap:5px}.wf .wf-g3{grid-template-columns:repeat(3,1fr)}.wf .wf-g2{grid-template-columns:repeat(2,1fr)}
.wf .wf-map{height:34px;background:#cfe0d6}
.wf .wf-cols{display:flex;gap:6px}.wf .wf-side{flex:0 0 38px;min-height:70px;background:var(--lilac-2);border-left:3px solid var(--purple)}
.wf .wf-main{flex:1;display:flex;flex-direction:column;gap:5px;background:none}
.wf .wf-block{height:22px}.wf .wf-small{height:14px}
.wf .wf-narrow{display:flex;flex-direction:column;gap:5px;padding:0 14px;background:none}
.wf .wf-photo{flex:0 0 44px;height:56px}.wf .wf-audio{height:10px;background:var(--purple)}
.wf .wf-row{display:flex;gap:6px;align-items:center;background:none}.wf .wf-row span{flex:1;display:flex;flex-direction:column;gap:4px;background:none}.wf .wf-thumb{flex:0 0 26px;height:26px}
.wf .wf-tl{display:flex;flex-direction:column;gap:6px;padding-left:12px;border-left:3px solid var(--purple);background:none}.wf .wf-tl i{height:12px}
.wf .wf-board{height:34px}.wf .wf-btn{width:50px;height:12px;background:var(--purple)}
.foot-cog a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
@media (max-width:640px){.wf{flex-basis:100%;width:100%}}

.ac-gate{margin:20px 0 6px;font-size:19px}
.ac-why{color:var(--muted);font-size:16px}
.ac-check li{padding:8px 0;border-top:1px solid #e6dcf2}

.ts-lookup{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:12px}
.ts-lookup label{font-weight:700}
.ts-lookup select,.ts-lookup input{min-height:44px;padding:0 12px;border:2px solid var(--indigo);border-radius:0;font:inherit;font-size:17px;background:#fff;color:var(--indigo)}
.ts-lookup input{flex:1 1 220px}
.ts-lookup button{min-height:44px;padding:0 18px;border:0;background:var(--purple);color:#fff;font:inherit;font-weight:700;cursor:pointer}

/* SEO toolkit */
.sk-big{margin:0 0 8px;font-size:64px;font-weight:800;line-height:1;color:var(--purple)}.sk-of{font-size:24px;color:var(--muted);font-weight:600}
.sk-prog progress{width:260px;height:14px;vertical-align:middle;margin-left:12px}
.sk-filter{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-bottom:16px}.sk-filter label{font-weight:700}
.sk-filter select{min-height:44px;padding:0 12px;border:2px solid var(--indigo);border-radius:0;font:inherit;font-size:17px;background:#fff;color:var(--indigo)}
.sk-tablewrap{overflow-x:auto}
.sk-table{width:100%;border-collapse:collapse;font-size:16px}
.sk-table th{text-align:left;padding:10px 12px;border-bottom:2px solid var(--indigo)}
.sk-table td{padding:12px;border-bottom:1px solid #e6dcf2;vertical-align:top}
.sk-table small{display:block;color:var(--muted);font-size:14px}
.sk-s{display:inline-block;min-width:48px;padding:4px 8px;text-align:center;color:#fff;font-size:18px}
.sk-good{background:#0a5c2f}.sk-mid{background:#8a4b00}.sk-bad{background:#b3261e}
.sk-fix{margin:0;padding-left:18px}.sk-fix li{margin:0 0 4px}
.sk-act{white-space:nowrap}.sk-act a,.sk-act button{display:inline-block;margin:0 8px 6px 0;padding:8px 12px;border:2px solid var(--purple);background:#fff;color:var(--purple);font:inherit;font-weight:700;font-size:15px;text-decoration:none;cursor:pointer}
.sk-prevgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.sk-google{display:flex;flex-direction:column;gap:2px;padding:16px;border:1px solid #d9cfe8;max-width:600px}
.sk-g-url{font-size:14px;color:#3d2d52}.sk-g-title{font-size:20px;color:#1a0dab;line-height:1.3}.sk-g-desc{font-size:14px;color:#4d5156;line-height:1.5}
.sk-card{border:1px solid #d9cfe8;max-width:500px}.sk-card-img{background:#e6dcf2;aspect-ratio:1.91/1;display:flex;align-items:center;justify-content:center;color:var(--muted);overflow:hidden}.sk-card-img img{width:100%;height:100%;object-fit:cover}
.sk-card-body{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:#f4f4f6}.sk-c-host{font-size:12px;color:#65676b}.sk-card-body strong{font-size:16px}.sk-card-body span:last-child{font-size:14px;color:#65676b}

/* Admin centre cards */
.ac-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:0 0 28px}
.ac-tile{padding:12px 14px;background:#fff;border:1px solid #d9cfe8;border-left:6px solid #0a5c2f;display:flex;flex-direction:column;gap:2px}
.ac-tile-warn{border-left-color:#8a4b00}
.ac-tile span{font-size:14px;color:var(--muted);font-weight:600}.ac-tile strong{font-size:17px}
.ac-find{margin:0 0 28px;max-width:520px}.ac-find label{display:block;font-weight:700;margin-bottom:6px}
.ac-find input{display:block;width:100%;min-height:48px;padding:0 14px;border:2px solid var(--indigo);border-radius:0;font:inherit;font-size:18px;background:#fff;color:var(--indigo)}
.ac-group{margin:0 0 40px}.ac-group>h2{margin:0 0 16px;font-size:28px}
.ac-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px}
.ac-card{display:flex;flex-direction:column;gap:8px;padding:22px 22px 20px;background:#fff;border:1px solid #d9cfe8;border-top:6px solid var(--purple);box-shadow:0 6px 18px rgba(24,17,60,.07)}
.ac-card-hot{border-top-color:var(--indigo);background:#faf6fd}
.ac-ic{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--lilac);color:var(--purple)}
.ac-card h3{margin:4px 0 0;font-size:21px}
.ac-card p{margin:0;font-size:16px;line-height:1.5;color:#3d2d52;flex:1}
.ac-card .ac-acts{margin-top:8px}
.ac-card[hidden],.ac-group[hidden]{display:none}
.ac-page.imp-page{max-width:var(--wrap)}

/* Homepage slide with a background video (muted, only that slide) */
.slide-video{position:absolute;inset:0;z-index:0;overflow:hidden;opacity:0;transition:opacity 1s ease;pointer-events:none}
.slide-video::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,17,60,.5) 0%,rgba(24,17,60,.25) 45%,rgba(24,17,60,.75) 100%)}
.slide-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.slide--vplay .slide-video{opacity:1}
.slide--vplay .slide-bg{opacity:0;transition:opacity 1s ease}
.hero-arrows .vctl{width:auto;height:56px;padding:0 22px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(24,17,60,var(--glass));-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);color:#fff;font:inherit;font-weight:700;font-size:16px;cursor:pointer;margin-right:8px}
.hero-arrows .vctl:hover{background:rgba(24,17,60,.85)}
.hero-arrows .vctl[hidden]{display:none}
@media (max-width:640px){.hero-arrows .vctl{height:48px;padding:0 16px;font-size:15px}}
