
:root{--green:#173e32;--cream:#f8f5ed;--gold:#dfad55;--muted:#626d62}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--green);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d79322;outline-offset:5px}.wrap{max-width:1200px;margin:auto;padding:0 42px}.top{background:var(--green);color:white;text-align:center;font-size:12px;letter-spacing:.08em;padding:11px}.top a{text-decoration:underline;margin-left:14px}header{position:sticky;top:0;background:#f8f5edf5;z-index:10;border-bottom:1px solid #173e321c}nav{height:90px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:bold;line-height:1.3}.brand small{display:block;font-weight:normal;font-size:10px;letter-spacing:.17em}.mark{display:grid;place-items:center;background:var(--green);color:var(--gold);width:43px;height:43px;border-radius:50%;font-family:Georgia;font-size:27px}.links{display:flex;align-items:center;gap:25px;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--green);color:white;padding:16px 22px;border-radius:4px;font-size:13px;border:1px solid var(--green);cursor:pointer}.btn.light{background:var(--gold);border-color:var(--gold);color:var(--green)}.btn.outline{background:transparent;color:var(--green);border-color:#173e3240}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:bold;display:block;margin-bottom:23px}.eyebrow:before{content:'';display:inline-block;width:25px;height:1px;background:var(--gold);vertical-align:middle;margin-right:12px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:normal}h1{font-size:clamp(48px,5.3vw,76px);line-height:1.06;letter-spacing:-.045em;margin-bottom:25px}h1 em{font-weight:normal;color:#9d7136}p{font-size:15px;line-height:1.8;color:var(--muted)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;padding-top:75px;padding-bottom:66px;align-items:center}.hero p{max-width:450px}.actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.hero-art{height:480px;position:relative;background:#e7e9da;border-radius:180px 180px 6px 6px;overflow:hidden}.hero-art svg{width:100%;height:100%}.art-label{position:absolute;bottom:24px;left:24px;right:24px;background:#fffaf0ed;padding:18px 20px;border-radius:4px;display:flex;align-items:center;gap:16px}.art-label b{font-family:Georgia;font-size:36px;font-weight:normal}.art-label span{font-size:12px;line-height:1.6}.caption{font-size:10px;color:#718073;text-align:right;padding-top:8px}.stats{border-top:1px solid #173e3225;border-bottom:1px solid #173e3225;display:grid;grid-template-columns:repeat(3,1fr);padding:28px 0}.stat{padding-left:35px;border-right:1px solid #173e3225;display:flex;align-items:center;gap:17px}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{font:38px Georgia}.stat span{font-size:12px;line-height:1.6;color:var(--muted)}section{padding:90px 0}h2{font-size:clamp(34px,3.5vw,47px);letter-spacing:-.035em;line-height:1.15;margin-bottom:25px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.quote{font:23px/1.5 Georgia;border-left:2px solid var(--gold);padding:0 0 0 24px;margin-top:30px}.programmes{background:#eeeee4}.section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:40px}.section-head p{max-width:370px;margin-bottom:25px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:34px;background:var(--cream);border-top:3px solid var(--gold)}.icon{font:32px Georgia;color:#8c743f;display:block;margin-bottom:40px}.card h3{font-size:27px}.card p{font-size:14px}.card ul{padding-left:17px;font-size:12px;color:var(--muted);line-height:2}.anniversary{background:var(--green);color:var(--cream);position:relative;overflow:hidden}.event-grid{display:grid;grid-template-columns:1fr .85fr;gap:90px;align-items:center}.anniversary p{color:#d2dace}.anniversary h2{font-size:55px}.event-date{font:25px Georgia;margin:30px 0}.event-panel{padding:38px;border:1px solid #ffffff30;background:#ffffff05}.event-panel .big{font:64px Georgia;color:var(--gold)}.event-panel h3{font-size:25px;margin-top:18px}.event-panel dl{display:flex;justify-content:space-between;border-top:1px solid #ffffff25;padding-top:22px;margin-top:25px}.event-panel dt{font-size:11px;color:#d2dace}.event-panel dd{font:24px Georgia;margin:10px 0 0}.support-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.support-options{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.support-item{padding:22px 0;border-top:1px solid #173e3230}.support-item h3{font-size:22px;margin-bottom:10px}.support-item p{font-size:13px}details{border-top:1px solid #173e3225;padding:22px 0}summary{cursor:pointer;font-size:14px;font-weight:bold}details p{margin:20px 0 0;font-size:13px}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:12px}td{padding:10px 0;border-bottom:1px solid #173e3215}td:last-child{text-align:right}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-top:35px}.timeline>div{border-top:1px solid #173e3240;padding-top:20px}.timeline b{color:#9d7136;font-size:11px}.timeline h3{font-size:21px;margin:15px 0}.timeline p{font-size:13px}.contact{background:#e8ecdf}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact a.email{font-size:clamp(13px,1.5vw,19px);text-decoration:underline;overflow-wrap:anywhere}.phone{display:block;font:25px Georgia;margin-top:25px}.contact-box{padding-left:35px;border-left:1px solid #173e3230}.contact-box p{font-size:14px}footer{padding:35px 0;background:var(--green);color:#d2dace}footer .wrap{display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:20px}.menu{display:none}.footer-note{font-size:11px;color:var(--muted);margin-top:15px}@media(max-width:850px){.wrap{padding:0 24px}.links{gap:15px}.links a:not(.btn){display:none}.hero{gap:30px}.hero-art{height:420px}.about-grid,.event-grid,.support-grid{gap:40px}.cards{gap:12px}.card{padding:24px}.timeline{grid-template-columns:1fr 1fr}}@media(max-width:600px){nav{height:76px}.brand{font-size:12px}.links .btn{padding:12px;font-size:11px}.hero{grid-template-columns:1fr;padding-top:40px}.hero-art{height:390px;margin-top:12px}.hero h1{max-width:380px}.stats{gap:12px}.stat{display:block;padding-left:12px}.stat strong{display:block;font-size:30px}.stat span{font-size:10px}section{padding:60px 0}.about-grid,.event-grid,.support-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.section-head{display:block}.cards{grid-template-columns:1fr}.icon{margin-bottom:20px}.anniversary h2{font-size:42px}.event-panel{padding:26px}.contact-box{padding:25px 0 0;border-left:0;border-top:1px solid #173e3230}footer .wrap{align-items:start;flex-direction:column}.top{font-size:10px}.timeline{gap:20px}}

.links a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--gold)}.page-intro{padding:46px 0 0}.breadcrumb{font-size:11px;color:var(--muted)}.breadcrumb a{text-decoration:underline}.page-intro + section{padding-top:40px}.page-intro + .anniversary{margin-top:30px;padding-top:60px}.page-intro + .contact{margin-top:30px;padding-top:60px}.subnav{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 25px;font-size:12px}.home-strip{padding:35px 0 45px;display:flex;justify-content:space-between;gap:25px;align-items:center}.home-strip h2{font-size:27px;margin-bottom:8px}.home-strip p{margin:0;font-size:13px}.footer-links{display:flex;gap:19px;flex-wrap:wrap;padding-top:23px!important;border-top:1px solid #ffffff25;margin-top:25px!important;font-size:11px}.mobile-menu{display:none}nav{gap:18px}.links{gap:20px;font-size:12px}.links .btn{padding:14px 17px} .programmes-page .cards{margin-bottom:0}
@media(max-width:1050px){.links{display:none}.mobile-menu{display:block;position:relative;border:0;padding:0}.mobile-menu summary{list-style:none;padding:12px 15px;border:1px solid #173e3240;border-radius:4px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu[open] summary{background:var(--green);color:white}.mobile-menu div{position:absolute;right:0;top:47px;width:230px;background:var(--cream);box-shadow:0 12px 25px #173e3220;border:1px solid #173e3225;padding:12px;display:grid;gap:3px}.mobile-menu a{padding:13px;font-size:13px}.mobile-menu a[aria-current="page"]{background:#e8ecdf}.brand{font-size:14px}}
@media(max-width:600px){.home-strip{align-items:start;flex-direction:column;padding-top:25px}.page-intro{padding-top:28px}.page-intro+section{padding-top:30px}.footer-links{flex-direction:row!important}.subnav{gap:18px}.brand{font-size:12px}}

/* Photo spaces across the foundation site */
.photo-section{padding:55px 0;background:#eeeee4}.photo-section .section-head{margin-bottom:25px}.photo-section h2{font-size:36px;margin-bottom:0}.text-link{font-size:12px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap;padding-bottom:7px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.photo-slot{margin:0;min-width:0}.photo-frame{aspect-ratio:4/3;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;overflow:hidden;background:#dbe1d2;color:#7e8f79;border:1px solid #173e3217;border-radius:3px}.photo-slot:nth-child(3n+2) .photo-frame{background:#e9dfcb;color:#aa9673}.photo-slot:nth-child(3n) .photo-frame{background:#d6dfd9;color:#80978b}.photo-corner{position:absolute;top:15px;left:16px;font-size:9px;letter-spacing:.14em}.photo-await{font-size:11px;letter-spacing:.03em}.photo-slot figcaption{padding-top:15px}.photo-slot figcaption>span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#7b805f}.photo-slot h3{font-size:20px;margin:8px 0 0}.photo-wide{grid-column:span 2}.photo-wide .photo-frame{aspect-ratio:2.1}.card>.photo-slot{margin:-34px -34px 28px}.card>.photo-slot .photo-frame{border:0;border-radius:0;aspect-ratio:1.5}.card>.photo-slot figcaption{display:none}.card .icon{margin-bottom:22px}.gallery-intro{padding:60px 0 30px}.gallery-intro h1{font-size:58px}.gallery-intro p{max-width:620px}.gallery-note{font-size:12px;color:#7b805f}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.gallery-filters button{border:1px solid #173e3230;background:transparent;border-radius:25px;padding:10px 19px;color:var(--green);font-size:12px;cursor:pointer}.gallery-filters button[aria-pressed="true"]{background:var(--green);color:white}.gallery-body{padding-top:10px}.gallery-grid{grid-auto-flow:row dense;row-gap:35px}.photo-slot[hidden]{display:none}.links{gap:15px;font-size:11px}
@media(max-width:850px){.card>.photo-slot{margin:-24px -24px 24px}.photo-grid{gap:16px}.photo-slot h3{font-size:18px}}
@media(max-width:600px){.photo-section{padding:35px 0}.photo-section h2{font-size:30px;margin-bottom:20px}.photo-grid{grid-template-columns:1fr 1fr}.photo-wide{grid-column:span 2}.photo-grid>.photo-slot:last-child:nth-child(odd){grid-column:span 2}.photo-corner{font-size:8px;top:12px;left:12px}.photo-slot h3{font-size:17px}.gallery-intro{padding-top:35px}.gallery-intro h1{font-size:44px}.gallery-filters button{padding:9px 14px}.card>.photo-slot .photo-frame{aspect-ratio:1.8}}

.photo-carousel{position:relative;outline-offset:7px}.carousel-track{position:relative;height:405px;overflow:hidden;border-radius:5px}.carousel-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;display:block}.carousel-slide.is-active{opacity:1;visibility:visible}.carousel-slide .photo-frame{height:330px;aspect-ratio:auto;background:linear-gradient(125deg,#d4dfcd,#e8eddf);border-radius:5px}.carousel-slide:nth-child(2) .photo-frame{background:linear-gradient(125deg,#eadfc8,#f2e9d8)}.carousel-slide:nth-child(3) .photo-frame{background:linear-gradient(125deg,#c5d9cf,#e1e9e1)}.carousel-slide:nth-child(4) .photo-frame{background:linear-gradient(125deg,#d5ddc5,#e8e9da)}.carousel-slide .photo-frame img{width:100%;height:100%;object-fit:cover}.carousel-slide figcaption{padding:16px 2px 0}.carousel-slide h3{font-size:23px}.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:14px}.carousel-arrows{display:flex;gap:8px}.carousel-arrows button{width:43px;height:40px;border:1px solid #173e3240;background:transparent;border-radius:4px;color:var(--green);font-size:22px;cursor:pointer}.carousel-arrows button:hover{background:var(--green);color:white}.carousel-dots{display:flex;gap:3px}.carousel-dots button{border:0;padding:10px;background:transparent;cursor:pointer}.carousel-dots button:after{content:'';display:block;width:8px;height:8px;border-radius:50%;background:#173e3230}.carousel-dots button[aria-pressed=true]:after{background:var(--green);box-shadow:0 0 0 3px #173e3215}.carousel-pause{border:0;background:transparent;color:var(--green);font-size:12px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:10px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.photo-carousel:focus-visible{outline:2px solid var(--gold)}
@media(max-width:600px){.carousel-track{height:335px}.carousel-slide .photo-frame{height:260px}.carousel-slide h3{font-size:20px}.carousel-controls{gap:5px}.carousel-pause{font-size:11px}.carousel-arrows button{width:36px;height:36px}.carousel-dots button{padding:9px}}
@media(prefers-reduced-motion:reduce){.carousel-slide{transition:none}}

/* Full-width opening slideshow */
.homepage-banner{padding:0}.hero-carousel{background:#173e32;color:white}.hero-carousel .carousel-track{height:620px;border-radius:0}.hero-carousel .carousel-slide{overflow:hidden}.hero-photo-backdrop{position:absolute;inset:0;background:radial-gradient(ellipse at 82% 28%,#82977b 0,transparent 52%),linear-gradient(120deg,#152f29,#496851)}.hero-carousel .carousel-slide:nth-child(2) .hero-photo-backdrop{background:radial-gradient(ellipse at 83% 25%,#ad9b6c 0,transparent 53%),linear-gradient(120deg,#273b30,#6f7452)}.hero-carousel .carousel-slide:nth-child(3) .hero-photo-backdrop{background:radial-gradient(ellipse at 80% 25%,#967252 0,transparent 55%),linear-gradient(120deg,#27392f,#756043)}.hero-photo-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10291ee0 0,#10291e90 45%,#10291e10 100%)}.hero-photo-backdrop img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.hero-photo-label{position:absolute;right:35px;top:30px;z-index:1;color:#ffffffa8;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.hero-slide-content{position:relative;z-index:2;padding-top:115px;width:100%}.hero-slide-content .eyebrow{color:#ecd09e}.hero-slide-content h1,.hero-slide-content h2{font:normal clamp(44px,5.2vw,70px)/1.08 Georgia,serif;letter-spacing:-.035em;max-width:820px;margin:0 0 23px;color:white}.hero-slide-content p{color:#edf0e7;font-size:16px;max-width:500px;margin-bottom:28px}.hero-carousel .carousel-controls{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);width:calc(100% - 84px);max-width:1116px;z-index:3;margin:0}.hero-carousel .carousel-arrows button{border-color:#ffffff70;color:white}.hero-carousel .carousel-arrows button:hover{background:#ffffff25}.hero-carousel .carousel-dots button:after{background:#ffffff65}.hero-carousel .carousel-dots button[aria-pressed=true]:after{background:var(--gold);box-shadow:0 0 0 3px #ffffff20}.hero-carousel .carousel-pause{color:white}.home-introduction{padding:55px 0 40px;max-width:850px}.home-introduction h2{font-size:39px}.home-introduction p{max-width:780px}.home-introduction .actions{margin-top:23px}.home-introduction .eyebrow{margin-bottom:18px}.hero-carousel a:focus-visible,.hero-carousel button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(max-width:600px){.hero-carousel .carousel-track{height:590px}.hero-slide-content{padding-top:95px}.hero-slide-content h1,.hero-slide-content h2{font-size:43px}.hero-slide-content p{font-size:14px;max-width:330px}.hero-slide-content .eyebrow{font-size:9px;letter-spacing:.12em}.hero-carousel .carousel-controls{width:calc(100% - 48px);bottom:24px}.hero-photo-label{top:22px;left:24px;right:24px;font-size:8px}.home-introduction{padding-top:35px}.home-introduction h2{font-size:32px}}

/* A warmer welcome: ocean teal, coral, sunshine and peach. */
:root{--green:#123f48;--cream:#fffbf4;--gold:#ffd168;--muted:#536a70;--teal:#117c83;--coral:#ed715c;--peach:#fff0e6;--sky:#e5f4f1}body{background:var(--cream);font-family:"Trebuchet MS",Arial,sans-serif}header{background:#fffbf4f5;border-color:#123f4815;box-shadow:0 4px 24px #123f4807}h1,h2,h3{font-family:Georgia,serif}.top{background:#117c83;color:white;letter-spacing:.1em}.brand .mark{background:#117c83;color:#ffdc85;box-shadow:0 0 0 5px #117c830e}.btn{background:#117c83;border-color:#117c83;border-radius:999px;font-weight:bold;padding:16px 24px;box-shadow:0 6px 0 #123f4810;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-3px);box-shadow:0 10px 20px #123f4820;background:#086970}.btn.light{background:#ffd168;border-color:#ffd168;color:#123f48}.btn.light:hover{background:#ffe09b}.btn.outline{background:#ffffff70;border-color:#123f4835}.btn.outline:hover{background:#e5f4f1}.links a:not(.btn){transition:color .2s}.links a:not(.btn):hover{color:#c04d39}.eyebrow{color:#a54c38;line-height:1.5}.eyebrow:before{background:#ed715c;height:3px;border-radius:2px}.hero-carousel .carousel-track{height:640px}.hero-photo-backdrop{background:linear-gradient(115deg,#087f86 0%,#20979c 58%,#6bb9ad 100%)}.hero-carousel .carousel-slide:nth-child(2) .hero-photo-backdrop{background:linear-gradient(115deg,#ae4c38,#df8065 65%,#f2ba83)}.hero-carousel .carousel-slide:nth-child(3) .hero-photo-backdrop{background:linear-gradient(115deg,#264d76,#428a9d 60%,#8fc9bc)}.hero-photo-backdrop:after{background:linear-gradient(90deg,#073f56b3 0%,#073f5640 57%,transparent 100%)}.hero-carousel .hero-slide-content{padding-top:125px}.hero-slide-content .eyebrow{color:#ffe5a1}.hero-slide-content .eyebrow:before{background:#ffd168}.hero-slide-content h1,.hero-slide-content h2{text-shadow:0 3px 20px #123f4820;max-width:760px}.hero-slide-content p{color:#fff9ee}.hero-decoration{position:absolute;right:8%;top:13%;width:360px;height:390px;opacity:.9}.sun-disc{position:absolute;width:225px;height:225px;right:0;top:10px;background:#ffd168;border-radius:50%;box-shadow:0 0 0 22px #ffd16815}.care-ring{position:absolute;border:3px solid #fff2c9aa;border-radius:50%;width:255px;height:255px;right:55px;top:70px}.ring-two{width:195px;height:195px;right:10px;top:160px;border-color:#fff5dd70}.care-heart{position:absolute;color:#fff4df;font-size:140px;right:98px;top:130px;transform:rotate(-12deg);text-shadow:8px 9px 0 #e0745b}.little-spark{position:absolute;right:260px;top:45px;color:#ffd168;font-size:55px}.tiny-heart{position:absolute;right:-5px;top:300px;color:#fff4df;font-size:42px;transform:rotate(15deg)}.hero-photo-label{color:#fff6ddaa;font-size:9px}.home-introduction{display:flex;gap:45px;max-width:100%;align-items:center;padding:60px 0 45px}.home-introduction>div:last-child{max-width:790px}.welcome-stamp{flex:0 0 190px;width:190px;height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:50% 50% 45% 45%;background:#ffe9d9;transform:rotate(-5deg);border:1px dashed #ed715c80;color:#974d39;font-size:14px;line-height:1.5}.welcome-stamp>span:first-child{color:#ed715c;font-size:50px;line-height:1.3}.stats{border:0;background:#e7f3ee;border-radius:22px;padding:28px 32px;margin-bottom:25px}.stat strong{color:#117c83}.stat{border-color:#117c8320}.stat:first-child{padding-left:0}.programmes{background:#fff0e6}.card{border:0;border-radius:20px;box-shadow:0 8px 28px #123f4807;overflow:hidden;transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-7px);box-shadow:0 18px 35px #123f4812}.icon{color:#c26745}.card:nth-child(2){background:#e5f4f1}.card:nth-child(3){background:#fff5cf}.card h3{color:#123f48}.photo-section{background:#f0f7f0}.photo-frame{border-radius:16px;border:1px solid #123f4810;transition:transform .35s,box-shadow .35s}.photo-slot:hover .photo-frame{transform:translateY(-4px);box-shadow:0 12px 24px #123f4812}.photo-slot:nth-child(3n+1) .photo-frame{background:#d6eee8;color:#4e8984}.photo-slot:nth-child(3n+2) .photo-frame{background:#ffe4d4;color:#b97d62}.photo-slot:nth-child(3n) .photo-frame{background:#fff0bd;color:#a18b45}.photo-slot figcaption>span{color:#956245}.anniversary{background:#115f69}.anniversary p{color:#e2f2ed}.event-panel{border-radius:22px;background:#ffffff0a;border-color:#ffffff35}.event-panel .big{color:#ffd168}.event-panel dt{color:#e4f1ea}.event-countdown{border-top:1px solid #ffffff30;margin-top:25px;padding-top:22px;display:flex;gap:14px;align-items:center}.countdown-number{font:36px Georgia;color:#ffd168;white-space:nowrap}.countdown-label{font-size:12px;color:#e8f4ed;line-height:1.5}.support-item{padding:22px 15px;border:0;border-radius:15px;transition:background .2s}.support-item:hover{background:#fff0e6}.support-options{gap:8px}.friendly-detail{margin-bottom:10px;border:1px solid #123f4818;border-radius:13px;padding:22px;background:#fffdf8}.friendly-detail[open]{background:#fff1dc;border-color:#e4bb6b}.friendly-detail summary{font-size:14px;line-height:1.6}.timeline>div{border-top:3px solid #ed715c;transition:transform .2s}.timeline>div:hover{transform:translateY(-5px)}.timeline b{color:#a54c38}.contact{background:#e4f2ed}.contact .email:hover{color:#a54c38}.contact-box{border-color:#117c8335}footer{background:#123f48;color:#f2f4eb}.footer-links a:hover{color:#ffd168}.gallery-filters button{transition:background .2s,transform .2s}.gallery-filters button:hover{transform:translateY(-2px);background:#ffe4d4}.gallery-filters button[aria-pressed=true]{background:#117c83;color:white}.gallery-grid .photo-slot[hidden]{display:none}.carousel-arrows button{border-radius:50%;transition:transform .2s,background .2s}.carousel-arrows button:hover{transform:scale(1.08)}.reading-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:50;pointer-events:none}.reading-progress span{display:block;width:0;height:100%;background:#ed715c}.back-top{position:fixed;right:22px;bottom:22px;z-index:20;width:45px;height:45px;border:0;border-radius:50%;background:#ed715c;color:#123f48;font-size:25px;box-shadow:0 5px 20px #123f4825;cursor:pointer}.back-top[hidden]{display:none}.back-top:hover{background:#ffd168}.giving-section{padding:30px 0 20px}.giving-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding-top:40px;padding-bottom:40px;background:#fff0e6;border-radius:25px}.giving-panel h2{font-size:37px}.giving-choice{background:#fffcf5;border:1px solid #e4c9ae50;border-radius:18px;padding:25px}.giving-tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid #123f4815;padding-bottom:20px}.giving-tabs button{border:0;border-radius:30px;padding:12px 14px;background:#e5f4f1;color:#123f48;font-size:12px;cursor:pointer}.giving-tabs button[aria-selected=true]{background:#117c83;color:white}.giving-choice h3{font-size:27px;line-height:1.25;margin:12px 0}.giving-choice p{font-size:14px}.giving-symbol{font:35px Georgia;color:#c66a45;display:block;margin-top:20px}.reveal-ready{opacity:0;transform:translateY(18px);transition:opacity .55s,transform .55s}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:900px) and (prefers-reduced-motion:no-preference){.hero-decoration{animation:gentle-float 7s ease-in-out infinite}@keyframes gentle-float{50%{transform:translateY(-14px) rotate(2deg)}}}
@media(max-width:900px){.hero-decoration{right:-80px;opacity:.35}.giving-panel{gap:25px}.home-introduction{gap:25px}.welcome-stamp{flex-basis:140px;width:140px;height:155px}}
@media(max-width:600px){.hero-carousel .carousel-track{height:600px}.hero-carousel .hero-slide-content{padding-top:105px}.hero-decoration{right:-120px;top:170px;opacity:.23}.home-introduction{display:block;padding-top:35px}.welcome-stamp{width:auto;height:auto;display:inline-flex;flex-direction:row;gap:12px;border-radius:40px;padding:9px 20px;transform:rotate(-2deg);margin-bottom:28px;text-align:left;font-size:12px}.welcome-stamp>span:first-child{font-size:27px}.stats{padding:22px 15px;border-radius:18px}.stat strong{font-size:28px}.giving-panel{grid-template-columns:1fr;border-radius:0;padding-top:30px;padding-bottom:30px}.giving-panel h2{font-size:32px}.giving-choice{padding:18px}.giving-tabs button{padding:11px;font-size:11px}.photo-section .section-head{margin-bottom:20px}.event-countdown{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}

.contact-dialog{width:min(620px,calc(100% - 32px));max-height:85vh;overflow-y:auto;padding:30px;border:1px solid #117c8330;border-radius:22px;background:#fffbf4;color:#123f48;box-shadow:0 20px 80px #123f4840}.contact-dialog::backdrop{background:#123f48b0}.enquiry-top{display:flex;justify-content:space-between;gap:15px;align-items:start}.enquiry-top .eyebrow{margin-bottom:15px}.enquiry-top button{border:0;background:#e5f4f1;color:#123f48;border-radius:50%;width:32px;height:32px;cursor:pointer}.contact-dialog h2{font-size:32px;margin-bottom:12px}.enquiry-contact{display:grid;gap:9px;background:#e5f4f1;padding:18px;border-radius:12px;margin-bottom:22px}.enquiry-contact>span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#536a70}.enquiry-contact a{font-size:14px;text-decoration:underline;overflow-wrap:anywhere}.enquiry-contact>span:nth-of-type(2){margin-top:10px}.contact-dialog label{display:block;font-size:12px;font-weight:bold;margin-bottom:10px}.contact-dialog textarea{width:100%;border:1px solid #117c8340;background:white;border-radius:10px;padding:13px;font:14px/1.6 Arial,sans-serif;color:#123f48;resize:vertical}.contact-dialog .actions{margin-top:18px;gap:10px}.contact-dialog .btn{font-size:12px;padding:13px 17px}.contact-dialog .enquiry-note{font-size:11px;line-height:1.7;margin:20px 0 0}.contact-dialog [role=status]{font-size:12px;color:#116d55;margin-top:12px}.contact-dialog button:focus-visible,.contact-dialog a:focus-visible,.contact-dialog textarea:focus-visible{outline:3px solid #ed715c;outline-offset:3px}@media(max-width:600px){.contact-dialog{padding:22px}.contact-dialog h2{font-size:28px}}

.social-profiles{display:grid;gap:10px;margin:22px 0 28px}.social-row{display:flex;align-items:center;gap:14px;padding:13px 15px;background:#fffdf7b3;border:1px solid #117c8312;border-radius:14px;color:#123f48}.social-icon{display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;border-radius:12px;color:white}.social-icon.instagram{background:linear-gradient(135deg,#7b36bd,#c73578,#e58538)}.social-icon.tiktok{background:#172a30}.social-icon.facebook{background:#1877f2}.social-icon.linkedin{background:#0a66c2}.social-identity{display:flex;flex-direction:column;gap:5px;min-width:0}.social-platform{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#536a70}.social-username{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.social-arrow{margin-left:auto;font-size:18px;color:#117c83}a.social-row{transition:transform .2s,box-shadow .2s}a.social-row:hover{transform:translateX(4px);box-shadow:0 5px 15px #123f4810;background:#fffdf7}@media(max-width:600px){.social-row{padding:12px}.social-username{font-size:12px}.social-icon{width:39px;height:39px;flex-basis:39px}}

.foundation-logo-wrap{display:grid;place-items:center;flex:0 0 60px;width:60px;height:60px;background:#117c83;border-radius:15px;padding:5px}.foundation-logo{display:block;width:100%;height:100%;object-fit:contain}footer .foundation-logo-wrap{background:transparent;border:1px solid #ffffff30}.brand{gap:13px}@media(max-width:600px){.foundation-logo-wrap{flex-basis:49px;width:49px;height:49px;border-radius:12px}.brand{gap:10px}}
.foundation-logo-wrap{padding:0;overflow:hidden;background:#123989}.foundation-logo-crop{display:block;width:100%;height:100%;background-image:url('assets/foundation-logo-source.jpeg');background-size:795.83px 1066.67px;background-position:-364.17px -45.83px;background-repeat:no-repeat}footer .foundation-logo-wrap{background:#123989;border:0}@media(max-width:600px){.foundation-logo-crop{background-size:649.93px 871.11px;background-position:-297.4px -37.43px}}

/* Light-blue emblem with a transparent background. */
.foundation-logo-wrap,footer .foundation-logo-wrap{background:transparent;border:0;border-radius:50%;padding:1px;overflow:hidden}.foundation-logo{display:block;width:100%;height:100%;object-fit:contain}.brand:hover .foundation-logo{transform:scale(1.04)}.foundation-logo{transition:transform .2s}

.celebration-top{padding:13px 0;background:#117c83;text-align:left;letter-spacing:normal}.celebration-bar{display:flex;align-items:center;justify-content:space-between;gap:20px}.top .celebration-intro{display:flex;align-items:center;gap:12px;margin:0;text-decoration:none}.celebration-star{font-size:34px;color:#ffd168}.celebration-intro strong{display:block;font-size:14px;letter-spacing:.02em}.celebration-intro small{display:block;margin-top:5px;font-size:10px;font-weight:normal;color:#e1f4ee;letter-spacing:.02em}.live-countdown{display:flex;align-items:center;gap:12px;font-variant-numeric:tabular-nums}.count-unit{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:40px}.count-unit b{font-size:24px;line-height:1;color:#ffdc85;font-weight:bold;min-width:2ch;text-align:center}.count-unit small{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#e7f5ed}.count-separator{font-size:20px;color:#a5d3ce;align-self:start;line-height:1}.top .celebration-link{margin:0;font-size:12px;text-underline-offset:4px;white-space:nowrap}.home-introduction{display:block;max-width:900px}.home-introduction>div:last-child{max-width:850px}.animated-stat{font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:750px){.celebration-bar{gap:15px}.celebration-link{display:none}.count-unit b{font-size:22px}.live-countdown{gap:7px}.celebration-intro strong{font-size:12px}.celebration-intro small{font-size:9px}.celebration-star{font-size:25px}}
@media(max-width:480px){.celebration-bar{flex-direction:column;gap:12px}.celebration-top{padding:12px 0}.celebration-intro small{text-align:center}.celebration-star{font-size:27px}.live-countdown{gap:13px}.count-unit{min-width:38px}.count-unit b{font-size:23px}.celebration-intro strong{font-size:13px}.celebration-intro small{font-size:9px}.stat strong{font-size:25px}}

/* Preserve the full statistic size on the animated child spans. */
.stat strong{font:38px Georgia,serif}.stat strong [data-count-to]{font:inherit;color:inherit;line-height:inherit}.stat strong.animated-stat{font-variant-numeric:tabular-nums}@media(max-width:600px){.stat strong{font-size:30px}}

/* Foundation photographs */
.hero-photo-backdrop>img{width:49%;height:100%;left:auto;right:0;object-fit:contain;object-position:center;background:#123f4833}.hero-photo-backdrop:after{background:linear-gradient(90deg,#073f56e6 0%,#073f56b3 44%,#073f5620 70%,transparent 100%)}.hero-slide-content h1,.hero-slide-content h2{max-width:650px}.photo-frame{overflow:hidden}.photo-zoom{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.photo-zoom img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform .35s}.photo-zoom:hover img{transform:scale(1.035)}.photo-slot.has-photo .photo-frame{background:#d6eee8}.gallery-grid .photo-slot{grid-column:auto}.gallery-grid .photo-frame{aspect-ratio:3/4}.gallery-grid .photo-grid>.photo-slot{grid-column:auto}.carousel-slide.has-photo .photo-frame{height:430px}.photo-carousel:not(.hero-carousel) .carousel-track{height:505px}.carousel-slide .photo-zoom img{object-fit:contain;background:#d6eee8}.photo-lightbox{padding:12px;border:0;border-radius:14px;background:#fffbf4;color:#123f48;max-width:min(94vw,1000px);max-height:94vh;overflow:auto}.photo-lightbox::backdrop{background:#08262ce8}.photo-lightbox>img{display:block;max-height:78vh;max-width:100%;width:auto;height:auto;margin:auto}.photo-lightbox>button{position:sticky;top:0;float:right;border:0;border-radius:50%;width:36px;height:36px;background:#117c83;color:white;cursor:pointer;margin-bottom:8px;z-index:2}.photo-lightbox p{font-size:13px;margin:12px 8px 2px}.photo-zoom:focus-visible{outline:4px solid #ed715c;outline-offset:-4px}
@media(max-width:600px){.hero-photo-backdrop>img{width:100%;object-fit:cover;object-position:center 30%;opacity:.65}.hero-photo-backdrop:after{background:linear-gradient(90deg,#073f56c9,#073f5680)}.hero-slide-content h1,.hero-slide-content h2{max-width:100%}.photo-carousel:not(.hero-carousel) .carousel-track{height:415px}.carousel-slide.has-photo .photo-frame{height:340px}.gallery-grid>.photo-slot:last-child:nth-child(odd){grid-column:auto}.photo-lightbox{max-width:96vw}}

/* Landscape photos fill the opening slideshow; the full collection lives in the gallery. */
.hero-photo-backdrop>img{width:100%;height:100%;left:0;right:0;object-fit:cover;object-position:center 45%;background:transparent}.hero-photo-backdrop:after{background:linear-gradient(90deg,#062c3be8 0%,#062c3ba6 45%,#062c3b33 100%)}.hero-slide-content h1,.hero-slide-content h2{text-shadow:0 2px 18px #0006}.gallery-grid .photo-frame{aspect-ratio:4/3}.gallery-grid .portrait-photo .photo-frame{aspect-ratio:3/4}.photo-zoom img{object-position:center center}.gallery-grid{align-items:start}.carousel-slide .photo-zoom img{object-fit:contain}.gallery-grid>.photo-slot:last-child:nth-child(odd){grid-column:auto}@media(max-width:600px){.hero-photo-backdrop>img{opacity:1;object-position:center center}.hero-photo-backdrop:after{background:linear-gradient(90deg,#062c3bda,#062c3b70)}.gallery-grid .photo-frame{aspect-ratio:1}.gallery-grid .portrait-photo .photo-frame{aspect-ratio:3/4}}

.hero-carousel .portrait-slide .hero-photo-backdrop>img{width:49%;left:auto;right:0;object-fit:contain;object-position:center;background:#237e83}.hero-carousel .portrait-slide .hero-photo-backdrop:after{background:linear-gradient(90deg,#073f56e8 0%,#073f56c4 40%,#073f560d 70%)}@media(max-width:600px){.hero-carousel .portrait-slide .hero-photo-backdrop>img{width:100%;object-fit:cover;object-position:center 30%}.hero-carousel .portrait-slide .hero-photo-backdrop:after{background:linear-gradient(90deg,#073f56da,#073f5666)}}
/* Fill the entire smiling portrait slide, with the smile as the focal point. */
.hero-carousel .portrait-slide .hero-photo-backdrop>img{width:100%;height:100%;left:0;right:0;object-fit:cover;object-position:50% 64%;background:transparent}.hero-carousel .portrait-slide .hero-photo-backdrop:after{background:linear-gradient(90deg,#073f56dc 0%,#073f5685 45%,#073f5615 100%)}@media(max-width:600px){.hero-carousel .portrait-slide .hero-photo-backdrop>img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}}

.story-opening{padding:55px 0 40px;border-bottom:1px solid #123f4814}.story-opening h1{font-size:clamp(42px,5vw,62px);max-width:850px}.story-lead{font-size:18px;line-height:1.8;max-width:820px;margin-bottom:0}.story-body{padding:55px 0 65px}.story-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:75px;align-items:start}.story-purpose{background:#e5f4f1;padding:30px;border-radius:20px}.story-purpose h2{font-size:31px;line-height:1.25}.story-purpose p{font-size:14px}.story-mission{border-top:1px solid #117c8330;padding-top:23px;margin-top:25px}.story-mission h3{font-size:24px;margin-bottom:12px}.story-mission p{margin:0}.story-narrative article+article{border-top:1px solid #123f4818;margin-top:30px;padding-top:30px}.story-narrative h2{font-size:31px;line-height:1.25;margin-bottom:18px}.story-narrative h3{font-size:23px;margin:25px 0 12px}.story-narrative p{font-size:15px;line-height:1.9;margin-bottom:18px}.story-invitation{padding:40px 0 55px;background:#fff0e6}.story-invitation h2{font-size:36px;margin-bottom:15px}.story-invitation p{margin-bottom:0}@media(max-width:850px){.story-layout{grid-template-columns:250px minmax(0,1fr);gap:35px}.story-purpose{padding:24px}}@media(max-width:600px){.story-layout{grid-template-columns:1fr;gap:35px}.story-opening{padding-top:35px}.story-lead{font-size:16px}.story-body{padding:35px 0}.story-narrative h2{font-size:28px}.story-purpose h2{font-size:29px}.story-invitation h2{font-size:30px}}

.btn.donate-button{background:#c44c38;border-color:#c44c38;color:white;box-shadow:0 5px 15px #c44c3820}.btn.donate-button:hover{background:#a93d2b;border-color:#a93d2b}.donate-button span{font-size:16px}.links{gap:12px;font-size:11px}.links .donate-button{padding:13px 18px}.donate-section{padding:35px 0}.donate-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;background:#fff0e6;padding-top:40px;padding-bottom:40px;border-radius:22px}.donate-panel h1{font-size:44px;line-height:1.12}.donate-panel h2{font-size:30px;margin-bottom:15px}.donate-panel p{font-size:14px}.donate-options{background:#fffcf7;border-radius:18px;padding:30px}.donate-supplies{display:block;font-size:12px;text-decoration:underline;text-underline-offset:4px;margin-top:20px}.donate-options .donate-note{font-size:11px;margin:22px 0 0}.donate-note a{text-decoration:underline}@media(max-width:600px){.donate-panel{grid-template-columns:1fr;gap:20px;border-radius:0;padding-top:30px;padding-bottom:30px}.donate-panel h1{font-size:36px}.donate-options{padding:24px}.mobile-menu .donate-button{display:flex;justify-content:center}}
/* White labels against the anniversary section's teal background. */
#anniversary .eyebrow{color:#fff}#anniversary .eyebrow:before{background:#fff}

.programme-icon{display:grid;place-items:center;width:78px;height:78px;border-radius:22px;background:#d7eee8;color:#117c83;margin-bottom:28px}.card:nth-child(2) .programme-icon{background:#ffdfcd;color:#a64d35}.card:nth-child(3) .programme-icon{background:#ffe9a7;color:#80640b}.programme-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.programme-community-grid .photo-frame{aspect-ratio:4/3}.programme-photo-note{margin:-10px 0 28px;max-width:650px;font-size:14px}.programme-community-grid>.photo-slot:last-child:nth-child(odd){grid-column:auto}@media(max-width:600px){.programme-icon{width:68px;height:68px;margin-bottom:22px}.programme-community-grid{grid-template-columns:1fr}.programme-photo-note{margin-top:0}}

.team-intro{padding:50px 0 30px}.team-intro h1{font-size:clamp(43px,5vw,62px);margin-bottom:20px}.team-intro p{max-width:700px;font-size:17px}.founders-section{padding:30px 0 55px}.team-section-heading{margin-bottom:27px}.team-section-heading .eyebrow{margin-bottom:13px}.team-section-heading h2{font-size:35px;margin-bottom:0}.founders-grid,.team-members-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.team-card{overflow:hidden;border-radius:20px;background:#fffdf8;border:1px solid #123f4812}.team-portrait{height:230px;background:#e3efec;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#638c91;gap:13px}.team-portrait>span{font-size:11px;letter-spacing:.05em;color:#536a70}.team-person{padding:27px}.team-role{font-size:11px;color:#a54c38;font-weight:bold;line-height:1.5;letter-spacing:.06em;margin:0 0 12px;text-transform:uppercase}.team-person h3{font-size:27px;line-height:1.3;margin:0}.founder-card{background:#e7f3ee;border-color:#117c8320}.founder-card .team-portrait{height:290px;background:linear-gradient(135deg,#d4e9e5,#eff6e9)}.founder-card:nth-child(2) .team-portrait{background:linear-gradient(135deg,#ffe7d7,#fff2de)}.founder-card .team-role{color:#117c83}.founder-card .team-person{padding:28px 30px}.founder-card h3{font-size:30px}.team-members-section{padding:50px 0 60px;background:#f0f7f0}.team-members-grid .team-card:nth-child(2) .team-portrait{background:#fff0d2}.team-members-grid .team-card:nth-child(3) .team-portrait{background:#ffe8dc}.team-members-grid .team-card:nth-child(4) .team-portrait{background:#deedf3}.team-invitation{padding:45px 0;background:#fff0e6}.team-invitation h2{font-size:33px;margin-bottom:15px}.team-invitation p{margin-bottom:22px}
@media(max-width:1200px){header .links{display:none}header .mobile-menu{display:block;position:relative;border:0;padding:0}header .mobile-menu summary{list-style:none;padding:12px 15px;border:1px solid #173e3240;border-radius:4px}header .mobile-menu div{position:absolute;right:0;top:47px;width:230px;background:var(--cream);box-shadow:0 12px 25px #173e3220;border:1px solid #173e3225;padding:12px;display:grid;gap:3px}header .mobile-menu a{padding:13px;font-size:13px}}
@media(max-width:600px){.team-intro{padding-top:35px}.founders-grid,.team-members-grid{grid-template-columns:1fr;gap:20px}.team-intro p{font-size:15px}.team-person h3,.founder-card h3{font-size:26px}.founder-card .team-portrait{height:250px}.team-members-section{padding-top:35px}.team-role{font-size:10px}.team-section-heading h2{font-size:31px}}

.team-social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.team-social-button{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #123f4825;border-radius:999px;font:12px "Trebuchet MS",Arial,sans-serif;background:#fff;color:#123f48}.team-social-button.linkedin{color:#0a66a2;background:#eaf3fa;border-color:#0a66a225}.team-social-button.instagram{color:#a93269;background:#fcecf2;border-color:#a9326925}.team-social-button:disabled{cursor:default;opacity:.75}.team-social-pending{font-size:10px;line-height:1.5;color:#65787a;margin:10px 0 0}

.team-location{padding:40px 0;background:#e5f4f1}.team-location-inner{display:flex;align-items:center;gap:25px}.location-pin{color:#117c83;flex:0 0 34px}.team-location .eyebrow{margin-bottom:10px}.team-location h2{font-size:29px;margin-bottom:12px}.team-location address{font-style:normal;font-size:15px;line-height:1.7;color:#536a70}.team-location .btn{margin-left:auto;white-space:nowrap}@media(max-width:600px){.team-location-inner{flex-wrap:wrap;gap:18px}.team-location-inner>div{flex:1}.team-location .btn{margin-left:52px}.team-location h2{font-size:26px}}

.programme-carousel .carousel-track{height:505px}.programme-carousel .carousel-slide .photo-frame{height:430px}.programme-carousel .carousel-slide .photo-zoom img{object-fit:contain;background:#d6eee8}.programme-carousel .carousel-slide figcaption{padding-top:15px}.programme-carousel .carousel-slide h3{margin:0;font-size:23px}.programme-carousel .carousel-dots{flex-wrap:wrap;justify-content:center}@media(max-width:600px){.programme-carousel .carousel-track{height:390px}.programme-carousel .carousel-slide .photo-frame{height:325px}.programme-carousel .carousel-controls{flex-wrap:wrap;justify-content:space-between;gap:9px}.programme-carousel .carousel-dots{order:3;width:100%}.programme-carousel .carousel-dots button{padding:9px}.programme-carousel .carousel-slide h3{font-size:20px}}
