@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--ink:#213e3c;--green:#426f63;--mint:#e7f1ea;--sand:#f7f4eb;--coral:#d18c78;--line:#dce5de}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',sans-serif;line-height:1.7}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.18;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,6vw,5.2rem);margin:.3em 0}h2{font-size:clamp(1.8rem,3vw,2.8rem)}h3{font-size:1.2rem}a{color:var(--green)}.wrap{max-width:1160px;margin:auto;padding:0 25px}.top{background:#f4f8f4;border-bottom:1px solid var(--line)}header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:90px}.brand{text-decoration:none;font-family:Manrope;font-weight:800;font-size:1.24rem;color:var(--ink);display:flex;align-items:center;gap:12px}.mark{width:42px;height:42px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:25px}nav{display:flex;flex-wrap:wrap;gap:16px}nav a{text-decoration:none;font-size:.87rem;font-weight:700}nav a:hover,nav a[aria-current=page]{color:#b96e57}.hero{background:radial-gradient(circle at 85% 25%,#d6e9dd 0,transparent 38%),linear-gradient(125deg,#f7f5ec,#eaf4ed);padding:100px 0}.eyebrow{font-size:.79rem;letter-spacing:.18em;text-transform:uppercase;color:#54786c;font-weight:800}.hero p{font-size:1.25rem;max-width:670px}.btn{display:inline-block;background:var(--green);color:white;text-decoration:none;padding:13px 23px;border-radius:40px;font-weight:700;margin:10px 10px 0 0;border:0;cursor:pointer}.btn.alt{background:transparent;border:1px solid var(--green);color:var(--green)}section{padding:65px 0}.intro{max-width:780px;font-size:1.14rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#f7f9f5;padding:28px;border-radius:20px;border:1px solid var(--line)}.card .num{font-size:2rem;color:var(--coral)}.band{background:var(--mint)}.quote{font-size:clamp(1.5rem,3vw,2.5rem);max-width:850px;font-family:Manrope;font-weight:700}.pagehead{background:var(--sand);padding:66px 0 55px}.pagehead h1{font-size:clamp(2.4rem,5vw,4rem)}.content{max-width:850px}.content p,.content li{font-size:1.08rem}.feature{border-left:4px solid var(--coral);padding:5px 0 5px 24px;margin:30px 0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:26px}.tag{display:inline-block;background:#e1ebe3;border-radius:30px;padding:5px 13px;font-size:.8rem;font-weight:700}.footer{background:#203e3b;color:#e8f2eb;padding:50px 0 25px}.footer a{color:#d7e8df}.footer small{color:#c4d8ce}.footerlinks{display:flex;flex-wrap:wrap;gap:14px}.footer .grid2{align-items:start}.form{max-width:650px;display:grid;gap:13px}.form input,.form textarea{padding:13px;border:1px solid #bacdc1;border-radius:9px;font:inherit;width:100%}.form label{font-weight:700}.form button{text-align:left;width:max-content}details{padding:15px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:700}@media(max-width:850px){header .wrap{display:block;padding-top:15px;padding-bottom:15px}nav{margin-top:15px}.cards,.grid2{grid-template-columns:1fr}.hero{padding:70px 0}section{padding:45px 0}}
/* Accessibility and responsive refinements */
.skip-link{position:absolute;left:12px;top:-70px;background:#fff;color:#213e3c;padding:12px;z-index:1000}.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b96e57;outline-offset:3px}
@media(max-width:550px){.wrap{padding-left:18px;padding-right:18px}nav{gap:9px 14px}nav a{font-size:.82rem}.hero{padding:56px 0}.hero p{font-size:1.1rem}.btn{margin-right:4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.pledge-list{padding-left:1.5rem}.pledge-list li{margin:0 0 16px}.form select{padding:13px;border:1px solid #bacdc1;border-radius:9px;font:inherit;width:100%;background:#fff}.checkrow{display:flex;gap:12px;align-items:flex-start}.checkrow input{width:20px;height:20px;flex:none;margin-top:5px}.smallnote{font-size:.85rem;color:#4a645a}.certificate{margin-top:38px;text-align:center}.certificate-inner{background:#fff;border:8px double #426f63;padding:45px 25px;max-width:760px;margin:0 auto}.certificate-inner h3{font-size:clamp(1.6rem,4vw,2.7rem);overflow-wrap:anywhere;color:#426f63}.certificate-inner .quote{font-size:1.4rem;margin:25px auto}.certificate[hidden]{display:none}@media print{body *{visibility:hidden!important}#certificate,#certificate *{visibility:visible!important}#certificate{display:block!important;position:absolute;inset:0;width:100%;margin:0}.certificate-inner{border:8px double #426f63}.print-hide{display:none!important}}
.footer-care{padding-top:20px;padding-bottom:24px;border-top:1px solid #54716a;margin-top:24px;font-size:.92rem;line-height:1.7}.footer-care p{max-width:100%;margin:0 0 12px}.footer-care a{text-decoration:underline}
@media print{.footer-care{display:none!important}}

/* Kindness in Action photo gallery */
.kindness-gallery-section{background:#f6f8f4}.kindness-photo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;margin:28px 0}.kindness-photo{grid-column:span 2;margin:0;background:white;border:1px solid #d9e5dd;border-radius:16px;overflow:hidden;box-shadow:0 7px 24px #173c2a0b}.kindness-photo:nth-child(4),.kindness-photo:nth-child(5){grid-column:span 3}.kindness-photo img{display:block;width:100%;height:260px;object-fit:cover}.kindness-photo:nth-child(3) img{object-position:center 60%}.kindness-photo figcaption{display:flex;flex-direction:column;gap:6px;padding:18px;color:#36564b}.kindness-photo figcaption strong{color:#23483d;font-size:1.05rem}.kindness-photo figcaption span{line-height:1.5;font-size:.94rem}@media(max-width:760px){.kindness-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kindness-photo,.kindness-photo:nth-child(4),.kindness-photo:nth-child(5){grid-column:span 1}.kindness-photo img{height:210px}}@media(max-width:520px){.kindness-photo-grid{grid-template-columns:1fr}.kindness-photo,.kindness-photo:nth-child(4),.kindness-photo:nth-child(5){grid-column:span 1}.kindness-photo img{height:auto;max-height:380px;object-fit:cover}}

/* Homepage photographs */
.home-hero-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(25px,5vw,75px);align-items:center}.home-hero-copy{min-width:0}.home-hero-photo,.home-gallery-photo{margin:0}.home-hero-photo img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:22px;box-shadow:0 18px 50px #213e3c20}.home-hero-photo figcaption{font-size:.82rem;color:#4d6d62;margin-top:10px}.home-gallery-feature{background:#f7f9f5}.home-gallery-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(25px,5vw,75px);align-items:center}.home-gallery-photo img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px}.home-gallery-layout p{font-size:1.1rem}@media(max-width:800px){.home-hero-layout,.home-gallery-layout{grid-template-columns:1fr}.home-hero-photo{max-width:650px}.home-hero-photo img{aspect-ratio:3/2}.home-gallery-photo{max-width:650px}}

/* National pledge counter and organisation field */
.pledge-counter{margin-top:30px;padding:26px 28px;background:#fff;border:1px solid #cdded3;border-left:5px solid #426f63;border-radius:16px;display:flex;flex-direction:column;gap:4px;max-width:430px;box-shadow:0 6px 20px #213e3c0a}.counter-number{font-family:Manrope,sans-serif;font-size:clamp(2.6rem,5vw,4rem);font-weight:800;line-height:1.15;color:#315e50;font-variant-numeric:tabular-nums}.counter-label{font-weight:800;font-size:1.1rem}.counter-note{font-size:.83rem;color:#4d685c;margin-top:7px}.optional-label{font-weight:400;color:#577468}.certificate-inner #certificate-organisation{font-size:1.15rem;font-weight:600;color:#426f63}
/* Fallback print stylesheet: hide the site layout and print the certificate alone. */
@page{size:A4 portrait;margin:12mm}
@media print{html,body{margin:0!important;padding:0!important;width:100%!important;height:auto!important;background:#fff!important}body>header,body>footer,.skip-link,.pagehead,main>section:not(#take-pledge),#take-pledge .grid2,#take-pledge .print-hide{display:none!important}main,#take-pledge,#take-pledge>.wrap{display:block!important;position:static!important;margin:0!important;padding:0!important;max-width:none!important;background:#fff!important}#certificate{display:block!important;position:static!important;inset:auto!important;width:100%!important;margin:0!important;padding:0!important;break-before:avoid!important;page-break-before:avoid!important}.certificate-inner{visibility:visible!important;display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:5mm;height:245mm!important;max-height:245mm!important;overflow:hidden!important;width:100%!important;max-width:none!important;padding:15mm!important;border:6px double #426f63!important;break-inside:avoid!important;page-break-inside:avoid!important}.certificate-inner *{visibility:visible!important}.certificate-inner h2{font-size:27pt!important}.certificate-inner h3{font-size:26pt!important;margin:2mm 0!important}.certificate-inner p{font-size:13pt!important;margin:2mm 0!important}.certificate-inner .quote{font-size:17pt!important;margin:8mm 0!important}}
