/* Live-site alignment layer: header, original section edges, forms, and programme detail. */
.top{min-height:43px;justify-content:center!important;align-items:center;position:relative;padding:10px max(5vw,24px)!important}.top>div:first-child{display:flex;justify-content:center;gap:0;align-items:center}.top .social{position:absolute;right:max(5vw,24px);top:50%;transform:translateY(-50%)}.top .social a{display:inline-grid;place-items:center;margin-left:9px;color:#fff}.top .social svg{width:15px;height:15px;fill:currentColor}.top span{margin-right:18px!important}.top span:last-child{margin-right:0!important}
.head{height:106px!important;justify-content:space-between;gap:32px!important}.nav{margin-left:auto!important;margin-right:auto!important;gap:27px!important;align-items:center}.nav>div{display:flex;align-items:center;gap:4px}.nav>div>a,.nav>div>button,.nav>a{font-size:16px!important;white-space:nowrap}.nav>div>button{display:inline-flex;align-items:center;justify-content:center;padding:10px 0!important;line-height:1!important}.nav .menu-caret{font-size:13px;line-height:1;transform:translateY(1px);display:inline-block}.navdonate{border-radius:999px!important;text-decoration:none!important;box-shadow:0 9px 22px rgba(200,144,10,.24)}.navdonate:after{display:none!important}.drop{top:36px!important;border-radius:0 0 14px 14px;padding:12px 16px!important;border:1px solid rgba(11,46,110,.08);box-shadow:0 16px 32px rgba(11,46,110,.16)!important}.drop a{font-size:14px!important}
.action-panels{margin:-18px auto 58px!important;gap:0!important;max-width:1080px;border-radius:20px;overflow:hidden;box-shadow:0 19px 42px rgba(11,46,110,.16)!important}.action-panels article{min-height:310px}.action-panels article span.action-icon{width:67px;height:67px;padding:15px;border-radius:18px;display:grid;place-items:center}.action-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.action-panels article:not(.featured) .action-icon{color:#c8900a}.action-panels .featured .action-icon{color:#fff}.action-panels h3{font-size:26px}.action-panels p{max-width:290px}.action-panels a{margin-top:6px}.hero+.action-panels{position:relative;z-index:4}
.recent-event{position:relative;overflow:hidden;padding:105px max(6vw,25px) 85px;background:linear-gradient(135deg,#fff 0%,#f8fbff 100%)}.recent-event:after{content:'';position:absolute;z-index:0;left:-4%;right:-4%;bottom:-56px;height:148px;background:#0b2e6e;border-radius:50% 50% 0 0/52% 52% 0 0;box-shadow:0 -16px 0 #316ddb,0 -29px 0 #fff,0 -38px 0 #0b2e6e}.recent-event-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:.72fr 1.55fr;gap:72px;align-items:center;position:relative;z-index:1}.recent-event h2{font-size:clamp(38px,4vw,60px);margin:0 0 24px}.recent-event h3{color:var(--navy);font-size:23px;margin:0 0 28px}.recent-event p{font-size:17px;line-height:1.75;max-width:410px}.event-photos{display:grid;grid-template-columns:1.1fr .95fr;gap:18px;align-items:center}.event-photos>img{width:100%;height:490px;object-fit:cover;border-radius:48px 0 48px 0;box-shadow:0 17px 31px rgba(11,46,110,.18)}.event-stack{display:grid;gap:18px}.event-stack img{width:100%;height:152px;object-fit:cover;border-radius:0 32px 0 32px;box-shadow:0 13px 24px rgba(11,46,110,.15)}
footer{background:#fff!important;color:#465b57!important;border-top:1px solid #e6eaf0;box-shadow:0 -8px 30px rgba(11,46,110,.035)}footer h4{color:#193a35!important;font-size:21px!important;margin-top:0}footer a,footer p{color:#526354!important;line-height:1.95!important}footer a:hover{color:var(--gold)!important}footer img{background:transparent!important;padding:0!important}.footer-bottom{grid-column:1/-1;text-align:center;border-top:1px solid #e6eaf0;padding-top:22px;margin-top:4px;color:#536663;font-size:13px}
.programme-detail{padding:88px max(6vw,25px);position:relative;overflow:hidden}.programme-detail:before{content:'';position:absolute;right:-130px;top:60px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(235,211,91,.2),transparent 67%);pointer-events:none}.programme-detail>.programme-lead,.programme-detail>.programme-pillars{max-width:1160px;margin-left:auto;margin-right:auto;position:relative;z-index:1}.programme-lead{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.programme-lead img{width:100%;height:410px;object-fit:cover;border-radius:28px;box-shadow:0 20px 42px rgba(11,46,110,.16)}.programme-lead p{line-height:1.75}.programme-pillars{margin-top:72px!important;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.programme-pillars article{background:#fff;border-radius:16px;padding:25px;box-shadow:0 11px 25px rgba(11,46,110,.09);border-top:4px solid var(--gold)}.programme-pillars article b{display:block;color:var(--gold);font-size:12px;letter-spacing:.09em}.programme-pillars article h3{color:var(--navy);margin:9px 0}.programme-pillars article p{font-size:14px;line-height:1.65}.programme-proof{background:#f6f8fb;padding:88px max(6vw,25px);display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.programme-proof>div{max-width:520px;justify-self:end}.programme-proof h2{margin-top:8px}.programme-proof p{line-height:1.8}.programme-quote{background:#fff;border-radius:28px;padding:42px;box-shadow:0 17px 35px rgba(11,46,110,.13);border-right:5px solid var(--gold);max-width:560px}.programme-quote b{font-size:52px;display:block;line-height:.7;color:var(--gold)}.programme-quote p{font-size:18px;color:#43534f}.programme-quote span{display:block;color:var(--navy);font-weight:700;margin-top:20px}.related-campaign{max-width:1160px;margin:0 auto;padding:0 25px 88px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.related-campaign article{border-radius:18px;padding:28px;background:linear-gradient(135deg,#0b2e6e,#1e55ad);color:#fff;box-shadow:0 15px 28px rgba(11,46,110,.16)}.related-campaign h3{color:#fff;margin-top:0}.related-campaign p{line-height:1.7}.related-campaign .outline-btn{color:#fff!important;border-color:#fff!important;background:transparent!important}
.form-page{padding-bottom:78px}.form-page>div:first-child{align-self:start}.form-page h2{color:var(--navy)}.form-page>div:first-child>p:not(.eyebrow){font-size:17px;line-height:1.8}.form-page .form{max-width:none!important;margin:0!important;padding:44px!important;border-radius:23px}.form-page .fields{gap:20px!important}.form-page .fields label{font-size:14px!important}.form-page .fields input,.form-page .fields select,.form-page .fields textarea{padding:13px!important;border-radius:7px}.form-page .form h3{color:var(--navy);margin:4px 0 9px}.form-page .form>p{line-height:1.7;margin:0 0 24px}.field-set{grid-column:1/-1!important;border:0!important;padding:0!important;display:block!important;background:transparent!important;box-shadow:none!important}.field-set legend{font-size:15px!important;color:var(--navy);padding:0!important;margin-bottom:12px}.choice-grid{display:flex;flex-wrap:wrap;gap:10px}.choice-grid label{width:auto!important;min-width:105px;display:flex!important;align-items:center;gap:7px;padding:10px 13px;border:1px solid #d5dfeb;border-radius:9px;background:#fff;box-shadow:0 3px 9px rgba(11,46,110,.04);font-weight:600!important}.choice-grid label:hover{border-color:var(--gold);box-shadow:0 7px 14px rgba(11,46,110,.09)}.choice-grid input{width:auto!important;margin:0!important;accent-color:var(--gold)}.days-grid label{min-width:95px}.bank-details{grid-column:1/-1;border-radius:13px;background:#eff5ff;border-left:4px solid var(--gold);padding:22px}.bank-details h3{margin:0 0 7px}.bank-details table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px}.bank-details td{padding:9px 6px;border-bottom:1px solid #d7e1ee}.bank-details td:first-child{font-weight:700;color:var(--navy);width:36%}.form-contact-row{max-width:1160px;margin:0 auto;padding:0 25px 80px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.form-contact-row article{padding:26px;border-radius:16px;background:#f6f8fb;border-top:3px solid var(--gold)}.form-contact-row b{color:var(--navy);display:block;font-size:18px;margin-bottom:10px}.form-contact-row p{margin:0;line-height:1.7}
@media(max-width:1000px){.nav{gap:15px!important}.nav>div>a,.nav>div>button,.nav>a{font-size:14px!important}.recent-event-inner,.programme-lead,.programme-proof{grid-template-columns:1fr;gap:36px}.programme-proof>div{justify-self:start}.programme-pillars{grid-template-columns:repeat(2,1fr)}.recent-event{padding-top:80px}.event-photos>img{height:390px}.form-contact-row{grid-template-columns:1fr 1fr}}@media(max-width:800px){.top .social{display:none}.top>div:first-child{flex-wrap:wrap;gap:8px 0}.top span{margin-right:12px!important}.head{height:78px!important}.nav>div{display:contents}.nav .menu-toggle{display:inline-block!important}.nav .drop{top:auto!important}.action-panels{margin:0 18px 45px!important;border-radius:16px}.recent-event-inner{grid-template-columns:1fr}.event-photos{grid-template-columns:1fr}.event-photos>img{height:350px;border-radius:28px}.event-stack{grid-template-columns:repeat(3,1fr)}.event-stack img{height:130px;border-radius:0 20px 0 20px}.programme-pillars,.related-campaign{grid-template-columns:1fr}.form-page .form{padding:28px!important}.form-contact-row{grid-template-columns:1fr;padding-bottom:60px}}@media(max-width:600px){.top{font-size:11px}.top span:nth-child(2){display:none}.top>div:first-child{justify-content:center}.action-panels article h3{font-size:23px}.event-stack{grid-template-columns:1fr}.event-stack img{height:180px}.programme-detail,.programme-proof{padding:62px 20px}.programme-pillars{grid-template-columns:1fr;margin-top:45px!important}.related-campaign{padding:0 20px 60px}.choice-grid label{min-width:calc(50% - 5px)}.form-page .form{border-radius:16px}}

.form-page .fields{grid-template-columns:1fr 1fr!important}
@media(max-width:600px){.form-page .fields{grid-template-columns:1fr!important}}

/* Progressive enhancement: no local-file preview should go blank because its
   animation observer is unavailable. The static prototype is the baseline. */
.reveal{opacity:1;transform:none}
.motion-ready .reveal{opacity:0;transform:translateY(24px)}
.motion-ready .reveal.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none}}

/* Campaign CTA: retain the rich navy treatment while meeting readable contrast. */
.campaign-large .outline-btn:first-of-type{background:linear-gradient(135deg,#0b2e6e,#174ca5)!important;border-color:#0b2e6e!important;color:#fff!important;font-weight:700!important;text-shadow:none!important;box-shadow:0 8px 17px rgba(11,46,110,.22)!important}
.campaign-large .outline-btn:first-of-type:hover,.campaign-large .outline-btn:first-of-type:focus-visible{background:linear-gradient(135deg,#c88f00,#e7b313)!important;border-color:#c88f00!important;color:#fff!important;outline:3px solid rgba(226,163,0,.28);outline-offset:2px}

/* Desktop header: group the brand and main navigation into one clear reading
   sequence, while leaving the donation CTA anchored at the far edge. */
@media(min-width:1001px){
  .head{grid-template-columns:auto minmax(0,1fr) auto!important;column-gap:clamp(42px,4.2vw,78px)!important;padding-left:clamp(42px,5vw,96px)!important;padding-right:clamp(42px,5vw,96px)!important}
  .brandmark{justify-self:start!important;margin:0!important}
  .nav{justify-self:start!important;margin:0!important;gap:30px!important}
  .nav>div>a,.nav>div>button,.nav>a{font-size:18px!important;line-height:1.2!important}
  .nav>div>button{padding:12px 0!important}
  .nav .menu-toggle{font-size:15px!important}
  .navdonate{font-size:16px!important;padding:15px 28px!important}
}

/* Centre the navigation independently of the logo and donation CTA. */
@media(min-width:1001px){
  .head{grid-template-columns:1fr auto 1fr!important;column-gap:0!important}
  .brandmark{justify-self:end!important;margin-right:clamp(28px,3vw,56px)!important}
  .nav{justify-self:center!important;margin:0!important}
  .navdonate{justify-self:end!important}
}

/* Click-open state for the header menus, including the compact mobile menu. */
.nav>div.menu-open .drop{display:block}
@media(max-width:800px){
  .nav.mobileopen>div .drop{display:none!important}
  .nav.mobileopen>div.menu-open .drop{display:block!important}
}

/* Live-site contact cards: one clear icon for each contact route. */
.form-contact-row article{position:relative;padding:30px 28px 28px 90px!important;min-height:190px;background:#f6f8fc!important;box-shadow:0 11px 24px rgba(11,46,110,.08)}
.contact-card-icon{position:absolute;top:26px;left:27px;width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#fff0bc,#f3cf54);color:#bd8300;box-shadow:0 8px 15px rgba(200,144,10,.17)}
.contact-card-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.form-contact-row article b{padding-top:7px}
@media(max-width:700px){.form-contact-row article{padding-left:86px!important;min-height:0}}

/* Complete About Us page: mirrors the live story, journey, values and policy flow. */
.about-story{max-width:1180px;margin:0 auto;padding:100px 28px;display:grid;grid-template-columns:1.03fr .97fr;gap:76px;align-items:center}.about-story h2,.about-journey h2,.about-values h2,.about-commitment h2{font-size:clamp(34px,3.5vw,52px);margin:10px 0 24px}.about-story p{line-height:1.82;margin:0 0 15px}.about-story em{color:var(--gold);font-weight:700;font-style:normal}.about-story img{width:100%;height:470px;object-fit:cover;border-radius:28px;box-shadow:0 20px 45px rgba(11,46,110,.16);border-right:5px solid var(--gold)}
.about-journey{background:#f4f7fb;padding:100px max(6vw,28px)}.about-journey>.intro{max-width:720px;margin:auto;text-align:center}.about-journey>.intro p:not(.eyebrow){line-height:1.75}.about-chapters{max-width:1180px;margin:52px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:22px}.about-chapters article{padding:31px;border-radius:18px;background:#fff;border-top:4px solid var(--gold);box-shadow:0 11px 26px rgba(11,46,110,.1)}.about-chapters span,.about-mission span,.policy-grid span{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.12em}.about-chapters h3{color:var(--navy);font-size:25px;margin:10px 0}.about-chapters p{line-height:1.75;margin-bottom:0}
.about-mission{padding:100px max(6vw,28px);display:grid;grid-template-columns:.95fr 1fr 1fr;gap:22px;align-items:stretch;background:linear-gradient(135deg,#092d6d,#174da4)}.about-mission>div{padding:28px;color:#fff}.about-mission h2{color:#fff;font-size:clamp(32px,3.4vw,48px);margin:10px 0}.about-mission article{padding:32px;border-radius:20px;background:#fff;box-shadow:0 14px 30px rgba(0,16,55,.22)}.about-mission article span{display:block}.about-mission h3{color:var(--navy);font-size:25px;margin:14px 0}.about-mission article p{line-height:1.75;margin-bottom:0}
.about-values{padding:100px max(6vw,28px)}.about-values>.intro{text-align:center}.value-grid{max-width:1180px;margin:46px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.value-grid article{padding:27px;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(11,46,110,.08);border-left:4px solid var(--gold)}.value-grid b{color:var(--gold);font-size:12px;letter-spacing:.1em}.value-grid h3{color:var(--navy);font-size:22px;margin:11px 0}.value-grid p{line-height:1.7;margin:0}
.about-matter{padding:82px max(8vw,28px);display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:linear-gradient(135deg,#eef4ff,#fff8e5)}.about-matter h2{color:var(--navy);font-size:clamp(31px,3.1vw,44px);margin:8px 0}.about-matter>p{font-size:19px;line-height:1.72;margin:0}
.about-commitment{padding:100px max(6vw,28px);background:#f5f7fb}.about-commitment>.intro{max-width:760px;margin:auto;text-align:center}.about-commitment>.intro p:not(.eyebrow){line-height:1.75}.policy-grid{max-width:1180px;margin:42px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.policy-grid a{min-height:225px;padding:24px;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(11,46,110,.09);color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}.policy-grid a:hover{transform:translateY(-5px);box-shadow:0 19px 36px rgba(11,46,110,.15)}.policy-grid h3{color:var(--navy);font-size:20px;margin:14px 0 10px}.policy-grid p{font-size:14px;line-height:1.65;margin:0}.policy-grid i{display:block;margin-top:18px;color:var(--gold);font-style:normal;font-weight:700;font-size:13px}
.about-faq{max-width:1000px;margin:auto;padding:100px 28px}.about-faq>.intro{text-align:center;margin-bottom:34px}.about-faq details{border-bottom:1px solid #dfe6f0;padding:0}.about-faq summary{display:flex;justify-content:space-between;gap:20px;list-style:none;padding:22px 4px;color:var(--navy);font:700 18px 'Bricolage Grotesque';cursor:pointer}.about-faq summary::-webkit-details-marker{display:none}.about-faq summary span{color:var(--gold);font-size:23px;line-height:.8}.about-faq details[open] summary span{transform:rotate(45deg)}.about-faq details p{max-width:760px;margin:0;padding:0 4px 23px;line-height:1.75}
@media(max-width:900px){.about-story,.about-matter{grid-template-columns:1fr;gap:38px}.about-story img{height:390px}.about-mission{grid-template-columns:1fr}.about-mission>div{padding:10px 5px}.value-grid{grid-template-columns:repeat(2,1fr)}.policy-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.about-story,.about-journey,.about-values,.about-commitment,.about-faq{padding:65px 20px}.about-chapters,.value-grid,.policy-grid{grid-template-columns:1fr}.about-chapters{margin-top:32px}.about-mission{padding:65px 20px}.about-matter{padding:65px 20px;gap:26px}.about-story img{height:310px}.policy-grid a{min-height:0}}

/* Keep the homepage gallery visually centred on wide displays, while retaining touch-scroll on smaller screens. */
.work-row{justify-content:center;max-width:1380px;margin-left:auto;margin-right:auto}.work-row img{flex:0 0 165px}@media(max-width:1200px){.work-row{justify-content:flex-start}}@media(max-width:700px){.work-row{justify-content:flex-start}}

/* Reserve clear breathing room beneath the event story before its decorative edge begins. */
.recent-event{padding-bottom:220px}.recent-event:after{bottom:-56px}@media(max-width:800px){.recent-event{padding-bottom:170px}}@media(max-width:600px){.recent-event{padding-bottom:145px}}

/* Board and volunteer treatments follow the live leadership-page visual system. */
.board-grid .card{border-left:7px solid var(--gold)!important;border-radius:18px!important;box-shadow:0 12px 27px rgba(11,46,110,.16)!important}.board-grid .card img{border-radius:12px 12px 0 0!important}.board-grid .card div{padding-left:22px!important}.board-grid .card p{color:var(--gold)!important;font-weight:700}.volunteer-area{position:relative;overflow:hidden;background:radial-gradient(circle at 8% 4%,#527cb8 0,transparent 31%),linear-gradient(155deg,#173d7e 0%,#0c2e6e 57%,#092963 100%)!important;padding:92px max(6vw,25px) 88px!important}.volunteer-area:before{content:'';position:absolute;width:610px;height:610px;right:-300px;top:-350px;border:1px solid rgba(235,211,91,.22);border-radius:50%}.volunteer-area .intro{position:relative;z-index:1}.volunteer-area .intro h2{color:#fff!important}.volunteer-area .intro p:not(.eyebrow){color:#dbe8ff!important}.volunteer-grid{position:relative;z-index:1;max-width:1210px!important;gap:34px!important}.volunteer-grid article{position:relative;min-height:500px;border-left:6px solid var(--gold)!important;border-radius:18px!important;background:#163b79!important;box-shadow:0 20px 37px rgba(0,16,49,.28)!important}.volunteer-grid article:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(4,25,66,.9));pointer-events:none}.volunteer-grid img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important}.volunteer-grid div{position:absolute;z-index:2;left:24px;right:20px;bottom:26px;padding:0!important}.volunteer-grid span{display:none}.volunteer-grid h3{display:inline-block;margin:0 0 8px!important;padding:8px 17px 8px 13px;border-radius:0 999px 999px 0;background:linear-gradient(90deg,#ce9200,#e2aa12);color:#fff!important;font-size:21px!important}.volunteer-grid h3:before{content:'— ';font-weight:400}.volunteer-grid p{margin:0!important;color:#fff!important;font-size:16px;font-weight:700}.volunteer-apply{position:relative;z-index:1;display:table;margin:33px auto 0;padding:15px 36px;border-radius:999px;background:linear-gradient(135deg,#e5b000,#c98b00);box-shadow:0 12px 25px rgba(0,0,0,.2);color:#fff;text-decoration:none;font-weight:700}.volunteer-apply:hover{transform:translateY(-2px)}@media(max-width:700px){.volunteer-area{padding:64px 20px!important}.volunteer-grid{grid-template-columns:1fr!important;gap:23px!important}.volunteer-grid article{min-height:455px}.volunteer-grid h3{font-size:19px!important}}
/* Motion system — progressive enhancement, layered above the static design. */
html.motion-active .motion-title,
html.motion-active .motion-card{
  opacity:1;
  will-change:transform,opacity,clip-path;
}
html.motion-active .motion-title.in-view{animation:ireti-text-reveal .82s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms) forwards}
html.motion-active .motion-card.in-view{animation:ireti-card-reveal .72s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms) forwards}
@keyframes ireti-text-reveal{from{opacity:.1;transform:translate3d(0,28px,0);clip-path:inset(0 0 105% 0)}to{opacity:1;transform:translate3d(0,0,0);clip-path:inset(0 0 0 0)}}
@keyframes ireti-card-reveal{from{opacity:.08;transform:translate3d(0,34px,0) scale(.975)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}

.motion-image{
  will-change:transform;
  transform:translate3d(0,var(--parallax-y,0px),0) scale(1.035)!important;
  transition:transform .18s linear;
}
.about-mission,.about-matter,.home-campaigns,.work{isolation:isolate;overflow:hidden}
.motion-orb{
  position:absolute;z-index:-1;width:18rem;height:18rem;border:1px solid rgba(213,154,0,.22);
  border-radius:50%;right:-7rem;bottom:-8rem;pointer-events:none;
  box-shadow:0 0 0 2.5rem rgba(23,62,139,.025),0 0 0 5.5rem rgba(213,154,0,.018);
  animation:ireti-orbit 18s linear infinite;
}
.about-matter .motion-orb,.work .motion-orb{left:-7rem;right:auto;top:-8rem;bottom:auto}
@keyframes ireti-orbit{to{transform:rotate(360deg)}}

.motion-tilt{transform-style:preserve-3d;will-change:transform;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease}
.motion-tilt.is-tilting{transform:perspective(850px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-5px)!important;box-shadow:0 24px 42px rgba(10,43,105,.18)!important}

.action-panels article,.campaign-large,.about-chapters article,.value-grid article,.policy-grid a,.form-contact-row article{backface-visibility:hidden}
.campaign-large .outline-btn:first-of-type{position:relative;overflow:hidden}
.hero .btn:first-of-type,.mission .btn:first-of-type{position:relative;overflow:hidden}
.campaign-large .outline-btn:first-of-type:after,.hero .btn:first-of-type:after,.mission .btn:first-of-type:after{
  content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 18%,rgba(255,255,255,.26) 48%,transparent 77%);
  transform:translateX(-125%);animation:ireti-shimmer 5.2s ease-in-out 1.2s infinite;pointer-events:none;
}
@keyframes ireti-shimmer{0%,68%{transform:translateX(-125%)}84%,100%{transform:translateX(125%)}}

@media (prefers-reduced-motion:reduce){
  html.motion-active .motion-title,html.motion-active .motion-card{opacity:1!important;transform:none!important;clip-path:none!important;animation:none!important}
  .motion-orb,.campaign-large .outline-btn:first-of-type:after,.hero .btn:first-of-type:after,.mission .btn:first-of-type:after{animation:none!important}
  .motion-image{transform:none!important}
}

/* Keep the centred navigation, but place the donation action alongside it. */
@media(min-width:1001px){.brandmark{margin-right:clamp(84px,6.2vw,118px)!important}.navdonate{justify-self:start!important;margin-left:clamp(84px,6.2vw,118px)!important}}

/* One alignment system for all primary and secondary action pairs. */
.btn,.outline-btn,.blue-btn{vertical-align:middle}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;line-height:1.1}
.cta-actions{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:25px}
.cta-actions .btn{margin:0!important;min-width:190px}
.hero .btn{vertical-align:middle}
.dignity .outline-btn,.dignity .blue-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;vertical-align:middle}
@media(max-width:600px){.cta-actions{gap:11px;margin-top:21px}.cta-actions .btn{min-width:170px}.hero .btn{margin-right:6px!important}}

/* Homepage editorial refresh: a stronger dignity story followed by a clean programme rhythm. */
.dignity{
  max-width:none!important;margin:0!important;padding:126px max(8vw,34px)!important;
  grid-template-columns:minmax(0,.96fr) minmax(420px,.9fr)!important;gap:clamp(54px,7vw,120px)!important;
  background:linear-gradient(118deg,#f8fbff 0%,#fff 49%,#f7f9fd 100%);overflow:hidden;
}
.dignity:before{left:max(5vw,24px)!important;top:20px!important;font-size:260px!important;color:rgba(200,144,10,.075)!important}
.dignity>div{max-width:590px;padding:18px 0 22px 33px;border-left:3px solid var(--gold)}
.dignity>div:before{left:-25px!important;top:-38px!important;width:112px!important;height:112px!important;border-radius:34px!important;opacity:.72}
.dignity h2{font-size:clamp(38px,3.75vw,57px)!important;letter-spacing:-.045em;max-width:590px;margin:0 0 25px!important}
.dignity h3{max-width:550px;margin:0 0 22px!important;padding:15px 18px;border-radius:0 14px 14px 0;background:linear-gradient(90deg,rgba(229,167,0,.12),transparent);font-size:19px!important}
.dignity p{max-width:555px;font-size:17px;line-height:1.8!important}
.dignity ul{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;row-gap:3px;margin:27px 0 15px!important}
.dignity li{margin:5px 0!important;font-weight:600}
.dignity li:before{display:inline-block;width:16px;margin-right:6px!important}
.dignity img{height:500px;object-fit:cover;object-position:center;border-radius:30px 30px 84px 30px!important;outline:1px solid rgba(200,144,10,.32);outline-offset:10px;box-shadow:0 27px 55px rgba(11,46,110,.18)!important}
.dignity .outline-btn,.dignity .blue-btn{margin-top:20px!important}

/* Programme shell only: the existing cards intentionally retain the shared programme design. */
.dignity + .wrap.soft{
  max-width:none!important;padding:92px max(7vw,28px) 40px!important;position:relative;overflow:hidden;
  background:linear-gradient(145deg,#f5f8ff 0%,#fff 58%,#f8fbff 100%)!important;
}
.dignity + .wrap.soft:before{content:'';position:absolute;width:470px;height:470px;right:-210px;top:-300px;border-radius:50%;border:1px solid rgba(200,144,10,.18);box-shadow:0 0 0 45px rgba(49,109,219,.025),0 0 0 92px rgba(200,144,10,.018)}
.dignity + .wrap.soft>*{position:relative;z-index:1}
.dignity + .wrap.soft h2{max-width:800px;margin:11px auto 17px!important;font-size:clamp(36px,3.65vw,54px)!important;letter-spacing:-.045em}
.dignity + .wrap.soft>p:not(.eyebrow){max-width:720px;margin:0 auto!important;font-size:17px;line-height:1.7}
.dignity + .wrap.soft .prog{max-width:1210px;margin:42px auto 0!important;gap:26px!important}
.dignity + .wrap.soft>.blue-btn{margin:42px auto 0!important;min-width:218px}
.dignity + .wrap.soft + .home-campaigns{padding-top:56px!important}

/* Shared section-title rhythm for editorial sections, pages, and catalogue views. */
.wrap.intro>h2,.home-campaigns>h2,.work>h2,.catalogue>h2{font-size:clamp(35px,3.55vw,52px);letter-spacing:-.04em;margin:10px auto 16px!important}
.wrap.intro>p:not(.eyebrow),.home-campaigns>p:not(.eyebrow),.work>p:not(.eyebrow),.catalogue>p:not(.eyebrow){line-height:1.7}
.home-campaigns>p.eyebrow,.work>p.eyebrow,.catalogue>p.eyebrow,.wrap.intro>p.eyebrow{margin-bottom:0!important}
@media(max-width:900px){.dignity{grid-template-columns:1fr!important;gap:48px!important;padding:86px max(6vw,24px)!important}.dignity img{height:430px}.dignity>div{max-width:none}.dignity + .wrap.soft{padding-top:72px!important}}
@media(max-width:600px){.dignity{padding:66px 24px!important}.dignity>div{padding-left:21px}.dignity h2{font-size:36px!important}.dignity h3{font-size:17px!important}.dignity ul{grid-template-columns:1fr}.dignity img{height:315px;border-radius:22px 22px 60px 22px!important;outline-offset:6px}.dignity + .wrap.soft{padding:62px 20px 34px!important}.dignity + .wrap.soft .prog{margin-top:32px!important}.dignity + .wrap.soft>.blue-btn{margin-top:32px!important}.dignity + .wrap.soft + .home-campaigns{padding-top:48px!important}}

/* The recent-event gallery uses two deliberate supporting images; no unrelated blanket frame. */
.recent-event .event-stack{height:490px;grid-template-rows:repeat(2,minmax(0,1fr))}
.recent-event .event-stack img{height:100%!important;min-height:0;object-position:center 38%}
@media(max-width:800px){.recent-event .event-stack{height:auto;grid-template-columns:repeat(2,1fr);grid-template-rows:none}.recent-event .event-stack img{height:190px!important}}
@media(max-width:600px){.recent-event .event-stack{grid-template-columns:1fr}.recent-event .event-stack img{height:230px!important}}
