:root{--ink:#0b0c0c;--paper:#f4f0e7;--red:#e73235;--deep-red:#b51d24;--muted:#bcbcb6;--line:#363737;--font:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.65 var(--font)}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a,input,select{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f6b649;outline-offset:5px}button{color:inherit}img{max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:950;line-height:.97;letter-spacing:-.045em}h1{font-size:clamp(3.25rem,6.65vw,6.4rem)}h2{font-size:clamp(2.75rem,5vw,5rem)}h3{font-size:1.65rem}em{font-style:normal;color:var(--red)}.wrap{width:min(1320px,calc(100% - 88px));margin-inline:auto}.masthead{display:flex;align-items:center;justify-content:space-between;padding-block:23px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:1.1rem;font-weight:950;line-height:.98;letter-spacing:-.03em}.brand img{width:65px;height:65px;object-fit:contain}.brand small{display:block;font-size:.65rem;letter-spacing:.3em;margin-bottom:4px}.brand b{color:var(--red)}nav{display:flex;align-items:center;gap:32px;font-size:.85rem;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--deep-red);border:1px solid transparent;color:white;min-height:57px;padding:16px 25px;font-size:.87rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;clip-path:polygon(0 0,96% 0,100% 22%,100% 100%,4% 100%,0 78%);transition:background .18s,transform .18s}.button:hover{background:#df282e;transform:translateY(-2px)}.button.small{min-height:48px;font-size:.75rem;padding:12px 22px}.text-link{display:inline-block;background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 3px;font-size:.85rem;font-weight:700;text-align:left;line-height:1.5}.text-link:hover{color:var(--red)}.hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;min-height:680px;padding-block:60px 72px;position:relative}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:.75rem;line-height:1.5;letter-spacing:.17em;font-weight:800;margin-bottom:25px}.eyebrow:before{content:'';height:3px;width:30px;background:var(--red);flex-shrink:0}.hero h1{position:relative;z-index:1}.hero .lead{font-size:1.2rem;font-weight:600;line-height:1.5;margin-top:26px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.reassurance{font-size:.8rem;color:var(--muted);line-height:1.7;margin-top:20px}.hero-art{padding:28px 10px 10px;align-self:center}.hero-art img{width:100%;max-height:510px;object-fit:contain;filter:drop-shadow(0 0 60px #b895431a)}.hero-art figcaption{text-align:center;margin-top:25px;font-size:.65rem;letter-spacing:.2em;color:#b4a37c;font-weight:700}.values{display:flex;justify-content:space-evenly;align-items:center;gap:20px;padding:22px 35px;background:var(--red);color:var(--ink);font-size:clamp(1rem,2.1vw,1.75rem);font-weight:950;letter-spacing:-.03em}.values i{font-size:1.1rem;font-style:normal}.manifesto{padding-block:100px;display:grid;grid-template-columns:1.3fr 1fr;gap:30px 80px}.manifesto>.eyebrow{grid-column:1/-1;margin-bottom:0}.manifesto>div>p{margin-bottom:22px;color:#c2c2ba;max-width:480px}.manifesto .pullquote{font-size:2.2rem;line-height:1.1;color:var(--paper);font-weight:900;letter-spacing:-.045em;margin-top:32px}.feature-section{background:var(--paper);color:var(--ink);padding-block:84px}.feature{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.feature h2{font-size:clamp(4rem,7.6vw,7.2rem)}.feature-joke{margin-top:30px;font-weight:700;font-size:1.12rem}.feature-card{border:1px solid #bfbdb5;padding:28px;background:#e9e5dc}.card-meta{display:flex;justify-content:space-between;gap:10px;font-size:.66rem;font-weight:800;letter-spacing:.11em}.big-initials{font-size:clamp(5rem,10vw,9rem);font-weight:950;line-height:1.25;letter-spacing:-.07em;color:var(--deep-red);border-bottom:1px solid #bfbdb5;margin-bottom:22px}.feature-card h3{font-size:2rem}.feature-card>p{margin-top:18px}.registration{font-size:.75rem;color:#5d5d58}.feature-card .button{width:100%;margin-top:24px}.feature-card .text-link{margin-top:16px}.fineprint{font-size:.75rem;color:#595952}.actions{display:grid;grid-template-columns:repeat(4,1fr);padding-block:60px}.actions>a,.actions>button{display:block;background:none;border:0;text-align:left;padding:12px 28px 12px 0}.actions>a+ a,.actions>button{border-left:1px solid var(--line);padding-left:28px}.actions span{display:block;font-size:2.2rem;color:var(--red);font-weight:900;margin-bottom:16px}.actions h3{font-size:1.45rem}.actions p{font-size:.9rem;color:var(--muted);margin-top:15px}.actions a:hover h3,.actions button:hover h3{color:var(--red)}.directory-section{background:#171818;padding-block:90px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-heading>p{max-width:330px;color:var(--muted)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}.filters label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;font-weight:700}.filters input,.filters select{width:100%;height:52px;border:1px solid #555;color:var(--paper);background:#0b0c0c;padding:12px;border-radius:0;min-width:0}.result-count{font-size:.8rem;color:var(--muted);margin-block:20px}.charity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.charity-card{display:flex;flex-direction:column;align-items:start;border:1px solid #3e3e3e;padding:26px;min-height:330px;transition:border .2s;background:#111212}.charity-card:hover{border-color:#aaa}.charity-card .tag{font-size:.68rem;letter-spacing:.1em;font-weight:800;color:#ff787a;text-transform:uppercase}.charity-card h3{margin-top:24px;font-size:1.7rem;line-height:1.08}.charity-card p{font-size:.9rem;color:var(--muted);margin-block:18px 12px}.charity-card .area{font-size:.75rem;color:#aaa;margin-top:auto;margin-bottom:17px}.charity-card button{font-size:.85rem}.directory-note{font-size:.8rem;color:#aaa;margin-top:30px}.spin-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-block:100px}.spin-copy>p:not(.eyebrow){max-width:480px;margin-top:25px;color:var(--muted)}.spin-copy .button{margin-top:30px}.spin-result{min-height:80px;max-width:450px;padding-top:24px;font-size:.95rem}.spin-result strong{display:block;color:#f5d697;margin-bottom:8px}.wheel-wrap{aspect-ratio:1;position:relative;max-width:460px;width:100%;margin:auto}.wheel{width:100%;height:100%;border-radius:50%;border:12px solid #dfcda6;background:conic-gradient(#b51d24 0deg 90deg,#e6dbc2 90deg 180deg,#b51d24 180deg 270deg,#e6dbc2 270deg 360deg);box-shadow:0 0 0 1px #726449,0 0 0 16px #26241e;position:relative;transition:transform 2.8s cubic-bezier(.12,.72,.12,1)}.wheel-centre{position:absolute;inset:34%;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#111;border:5px solid #dfcda6;font-weight:900;font-size:2rem;line-height:.95;text-align:center;letter-spacing:-.05em}.wheel-label{position:absolute;font-size:1rem;font-weight:900;letter-spacing:.08em;color:#101111}.l1{top:22%;right:16%;transform:rotate(45deg);color:white}.l2{bottom:22%;right:16%;transform:rotate(-45deg)}.l3{bottom:22%;left:18%;transform:rotate(45deg);color:white}.l4{top:22%;left:14%;transform:rotate(-45deg)}.pointer{position:absolute;top:-36px;left:calc(50% - 18px);font-size:2.4rem;color:var(--paper);z-index:2}.closing{background:var(--deep-red);padding-block:85px}.closing .eyebrow:before{background:white}.closing h2{font-size:clamp(2.9rem,5.5vw,5.5rem)}.closing em{color:var(--ink)}.closing p:not(.eyebrow){margin-top:30px;font-weight:600}.button.light{background:var(--paper);color:var(--ink);margin-top:30px}footer{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-block:40px}.footer-brand{font-weight:900;letter-spacing:-.035em}.footer-brand span{display:block;font-size:.8rem;font-weight:400;color:#aaa;letter-spacing:0}footer>div:nth-child(2){display:flex;align-items:start;justify-content:end;gap:24px}footer>p{grid-column:1/-1;font-size:.75rem;color:#999;max-width:700px}.cookie-note{position:fixed;bottom:22px;right:22px;width:350px;background:var(--paper);color:#111;padding:26px;box-shadow:0 15px 60px #0008;z-index:5;border-top:4px solid var(--deep-red)}.cookie-note .eyebrow{font-size:.62rem;margin-bottom:15px;letter-spacing:.1em;gap:8px}.cookie-note .eyebrow:before{width:18px}.cookie-note h3{font-size:1.8rem}.cookie-note>p:not(.eyebrow){font-size:.82rem;margin-block:12px}.cookie-note .text-link{font-size:.75rem}.close{position:absolute;right:12px;top:9px;width:34px;height:34px;background:none;border:0;font-size:1.7rem;line-height:1}.skip{position:fixed;top:-100px;left:20px;z-index:20;padding:10px;background:var(--paper);color:#000}.skip:focus{top:10px}dialog{width:min(620px,calc(100vw - 32px));max-height:85vh;border:1px solid #777;padding:42px;background:var(--paper);color:#111;overflow:auto}dialog::backdrop{background:#000b}dialog h2{font-size:2.5rem;margin-bottom:20px;line-height:1.05}dialog h3{font-size:1.3rem;margin-top:24px}dialog p{margin-block:15px}dialog .button{margin-top:15px}dialog .source{font-size:.8rem}dialog a:not(.button){text-decoration:underline}dialog .dialog-actions{display:flex;flex-direction:column;gap:12px;align-items:start}.empty{grid-column:1/-1;padding:40px;border:1px solid var(--line)}[hidden]{display:none!important}@media(min-width:1600px){.hero{min-height:740px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}nav{gap:18px}.hero{min-height:620px;grid-template-columns:1.3fr 1fr}.hero-actions{gap:18px}.hero-art{padding:0}.hero-art figcaption{font-size:.56rem}.manifesto{gap:30px 45px}.feature{gap:40px}.charity-grid{grid-template-columns:repeat(2,1fr)}.spin-section{gap:45px}.wheel-label{font-size:.8rem}.actions h3{font-size:1.2rem}.actions p{font-size:.8rem}.actions>a,.actions>button{padding-right:18px}.actions>a+a,.actions>button{padding-left:18px}}@media(max-width:700px){.wrap{width:calc(100% - 36px)}.masthead{padding-block:18px}.brand{font-size:.95rem}.brand img{width:48px;height:48px}nav>a:not(.button){display:none}.button.small{padding:10px 14px;font-size:.65rem;gap:8px;min-height:42px}.hero{grid-template-columns:1fr;padding-block:48px 40px;min-height:0;gap:15px}.eyebrow{font-size:.62rem;letter-spacing:.12em;margin-bottom:20px}.hero h1{font-size:clamp(2.9rem,10.4vw,4.8rem)}.hero .lead{font-size:1.1rem}.hero-art{max-width:320px;margin:auto;padding:20px}.hero-art figcaption{font-size:.62rem}.hero-actions{align-items:start;flex-direction:column}.reassurance{font-size:.75rem}.values{padding:18px 12px;gap:8px;font-size:.83rem;flex-wrap:wrap}.values i{font-size:.6rem}.manifesto{grid-template-columns:1fr;padding-block:60px;gap:25px}.manifesto>div>p{max-width:none}.feature-section{padding-block:56px}.feature{grid-template-columns:1fr;gap:35px}.feature h2{font-size:4.9rem}.feature-card{padding:23px}.big-initials{font-size:6.5rem}.actions{grid-template-columns:1fr 1fr;padding-block:35px;gap:25px}.actions>a,.actions>button,.actions>a+a{border:0;padding:0}.actions h3{font-size:1.4rem}.actions p{font-size:.9rem}.actions span{margin-bottom:7px}.directory-section{padding-block:55px}.section-heading{display:block}.section-heading>p{margin-top:25px}.filters{grid-template-columns:1fr 1fr}.filters>label:first-child{grid-column:1/-1}.charity-grid{grid-template-columns:1fr}.charity-card{min-height:270px}.spin-section{grid-template-columns:1fr;padding-block:60px;gap:55px}.wheel-wrap{width:85%;max-width:330px}.wheel-label{font-size:.78rem}.wheel-centre{font-size:1.5rem}.closing{padding-block:60px}.closing h2{font-size:clamp(2.1rem,7.5vw,3.6rem)}footer{grid-template-columns:1fr}footer>div:nth-child(2){justify-content:start;flex-wrap:wrap}.cookie-note{width:calc(100% - 32px);right:16px;bottom:16px;padding:24px;max-width:350px}.desktop{display:none}dialog{padding:35px 25px}.feature-card h3{font-size:1.8rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

h1>span,h1>em{display:block}@media(max-width:700px){.hero h1{font-size:clamp(2rem,9.2vw,4rem);letter-spacing:-.045em}}
/* Keep the biscuit joke without covering the charity or donation controls. */
#wheel-link{display:block;background:none;border:0;padding:0;color:inherit;font:inherit;text-align:initial;overflow:visible}
#wheel-link:disabled{cursor:default;opacity:1}
#wheel-link:not(:disabled){cursor:pointer}
#wheel-link:not(:disabled):hover .wheel-centre{background:var(--deep-red)}
.wheel-art{display:block;width:100%;height:100%;aspect-ratio:1;overflow:clip;overflow-clip-margin:36px}
.spin-result .chosen-title{display:block;color:#f5d697;font-size:1rem;margin-bottom:8px}
.cookie-note{position:relative;inset:auto;width:min(600px,calc(100% - 36px));max-width:none;margin:0 auto 40px;box-shadow:none}
@media(max-width:380px){.feature h2{font-size:clamp(3.5rem,18vw,4.9rem)}.feature-card .button{padding-inline:12px;gap:10px}.actions{gap:24px 18px}}
.pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:30px}.pagination button:disabled{opacity:.4;cursor:default}.review-note{font-size:.75rem;color:#f5d697;margin-bottom:12px}
.policy{max-width:850px;padding-block:60px}.policy h1{font-size:clamp(2.3rem,6vw,4rem)}.policy h2{font-size:1.5rem;margin-top:32px}.policy p{margin-block:18px}.policy p a{text-decoration:underline}.policy .button{margin-top:24px}

/* Keep narrow cards and long contact links within the viewport. */
.feature>*{min-width:0}.card-meta{flex-wrap:wrap}.policy a{overflow-wrap:anywhere}


.masthead{flex-wrap:wrap;gap:16px}.brand,.masthead>nav{flex-shrink:0}
