@charset "UTF-8";
:root{color-scheme:dark;--bg:#10151f;--panel:#192334;--line:#37465d;--text:#f6f8fe;--muted:#b7c4d9;--accent:#e8efff;--accentText:#10151f;--focus:#ffd65c;font-family:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;min-height:100vh;line-height:1.6}a{color:#c2dcff}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.skip{position:absolute;top:-6rem;left:1rem;padding:.5rem;background:white;color:#111;z-index:99}.skip:focus{top:1rem}.shell{width:min(100% - 2rem,900px);margin:auto}.hero{min-height:min(82vh,720px);display:grid;place-items:center;text-align:center;padding:4rem 0 2rem}.hero-inner{max-width:640px}.eyebrow{font-size:.72rem;letter-spacing:.19em;text-transform:uppercase;color:#a9bdd9;display:inline-block}.mast{font-size:clamp(3.3rem,12vw,5.4rem);line-height:1.1;margin:1.4rem 0 .45rem;letter-spacing:-.055em}.subtitle{color:#b2c8e4;letter-spacing:.07em;text-transform:uppercase}.rule{border:0;border-top:1px solid var(--line);margin:2.2rem auto;width:min(100%,500px)}h2{font-size:clamp(1.5rem,5vw,2.3rem);line-height:1.25}p{color:#d7deea}.attribution{color:#a6b9d3;font-size:.9rem}.cta{display:block;text-decoration:none;margin:2rem auto .7rem;padding:1.1rem 1.4rem;border-radius:13px;background:#fff;color:#131c2b;font-weight:800;font-size:clamp(1.25rem,5vw,1.8rem);transition:transform .15s,background .15s}.cta:hover{transform:translateY(-2px);background:#e5efff}.tagline{font-size:.87rem;color:#a8b9d2}.site-footer{border-top:1px solid var(--line);padding:1.6rem 0 2rem;margin-top:2rem;text-align:center;font-size:.85rem;color:#bac8dd}.site-footer a{color:#e4edff}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.35rem 1.3rem;margin:.3rem 0 1rem}.site-footer p{margin:.4rem 0;color:#b0c0d5}.microcopy{font-size:.82rem}.status-note{max-width:760px;margin:0 auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:1rem 1.4rem;text-align:center}.status-note p{margin:.35rem 0}.content{padding:3rem 0 2rem}.content h1{font-size:clamp(2rem,7vw,3.3rem);line-height:1.15}.content h2{margin-top:2rem;font-size:1.3rem}.content h3{margin-top:1.5rem}.lead{font-size:1.15rem;color:#d2e0f1}.meta{color:#b0bfda;font-size:.85rem}.content section{margin-bottom:1.5rem}.content p,.content li{max-width:78ch}.content li{padding-bottom:.4rem}.content ul{padding-left:1.2rem}.panel{background:var(--panel);border:1px solid var(--line);padding:1.2rem 1.4rem;border-radius:13px}.breadcrumb{font-size:.9rem;color:var(--muted)}.breadcrumb a{color:var(--muted)}.faq details{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:1rem 1.2rem;margin:.8rem 0}.faq summary{cursor:pointer;font-weight:700}.faq details p{margin-bottom:.3rem}.emphasis{font-weight:700;color:#fff}.disclaimer{border-left:3px solid #e0b94b;padding:.5rem 1rem;background:#1c2533}.joke-body{--bg:#0f2042;--panel:#1f3560;--line:#456189;--focus:#ffcc00}.joke-shell{max-width:800px}.joke-card{margin:3.5rem auto 1.5rem;padding:clamp(1.3rem,4vw,2.2rem);border:1px solid #526487;border-radius:15px;background:#ffffff12;text-align:center;box-shadow:0 8px 32px #0005}.joke-heading{font-size:clamp(2rem,6vw,2.65rem);line-height:1.2;margin:0;color:#80baff}.joke-slogan{font-size:clamp(1.4rem,4vw,1.85rem);font-style:italic;font-weight:800;color:#ffcc00;line-height:1.4}.joke-photo{display:block;max-width:100%;height:auto;margin:1.7rem auto;border:4px solid white;border-radius:10px;box-shadow:0 4px 15px #0008}.joke-text{font-size:1.06rem;text-align:left;background:#0006;border-left:5px solid #5ca5ff;border-radius:6px;padding:1.2rem}.credit{font-size:.8rem;color:#c6d5ed}.joke-share{background:#ffcc00;color:#1c2850}.joke-share:hover{background:#ffe28c}.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}@media(max-width:480px){.hero{min-height:73vh}.joke-card{margin-top:2rem}.shell{width:calc(100% - 1.4rem)}}
/* Glasgow charity section. Balanced visibility: one fair random featured slot, all others shown. */
.charity-section{max-width:900px;margin:2.5rem auto 1.5rem;text-align:left}
.charity-intro{max-width:780px;margin:0 auto 1.5rem;text-align:center}
.charity-intro h2{margin:.45rem 0 1rem;color:#fff;font-size:clamp(1.65rem,4.7vw,2.35rem)}
.charity-intro p{color:#e0eafa}
.charity-featured{background:#fff;color:#142647;border-radius:17px;padding:clamp(1.4rem,4vw,2rem);border:3px solid #ffcc00;box-shadow:0 12px 36px #0005}
.charity-featured h3{font-size:clamp(1.65rem,4vw,2rem);margin:.4rem 0}.charity-featured p{color:#31455f;margin:.7rem 0}
.featured-label{text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:900;color:#714d00!important}
.cause-pill{display:inline-block;background:#e6eef9;color:#213c64;font-size:.8rem;letter-spacing:.04em;font-weight:800;border-radius:30px;padding:.3rem .7rem}
.charity-address{font-size:.86rem;line-height:1.6}
.charity-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:1.4rem}
.donate-button{display:inline-block;background:#ffcc00;color:#171e37!important;text-decoration:none;border-radius:9px;font-weight:800;padding:.83rem 1.1rem;box-shadow:0 1px 2px #0002}
.donate-button:hover{background:#ffe28c}.charity-detail-link{color:#174984;font-weight:700}
.all-charities-title{font-size:1.4rem;margin:2rem 0 1rem;color:#fff}
.charity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.charity-card{background:#e8f1ff;color:#132949;border-radius:12px;padding:1.25rem;border:1px solid #90acd5;display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}
.charity-card h4{font-size:1.24rem;margin:0;line-height:1.3}.charity-card p{color:#293f5b;margin:0}.charity-card .charity-address{margin-bottom:auto}.charity-card .donate-button{margin-top:.45rem}
.charity-fineprint{font-size:.89rem;color:#c8d5ec;margin-top:1.4rem}
.charity-fineprint a{color:#fff}
@media(max-width:650px){.charity-grid{grid-template-columns:1fr}.charity-section{margin-top:2rem}.charity-actions{align-items:stretch}.donate-button{width:auto}}

/* Current-news sequel: clearly separated from the satirical punchline and charity listings. */
.news-update{margin:1.9rem auto 1.2rem;text-align:left;padding:1.25rem 1.5rem;border:1px solid #f1bb58;border-left:6px solid #ffcc00;border-radius:12px;background:#162e53;box-shadow:0 10px 28px #0003}
.news-update h2{color:#ffdc7a;font-size:clamp(1.55rem,4vw,2.05rem);margin:.4rem 0 .85rem}.news-update p{color:#f1f5ff;margin:.65rem 0}.news-update .eyebrow{color:#ffdc7a}.news-update .news-hook{font-weight:800;border-left:2px solid #85baff;padding-left:.9rem}.news-update .news-source{color:#d5e2f6;font-size:.83rem}.news-update .news-kicker{font-size:1.07rem;color:#fff}.news-timeline{display:grid;gap:.4rem;margin:1rem 0;padding:1rem;border-radius:10px;background:#0d2345;border:1px solid #42658f}.news-timeline p{margin:0}.news-timeline strong{color:#ffdc7a}
.charity-unavailable{padding:1.2rem;border:1px solid #ffdc7a;border-radius:10px;background:#1b3158;text-align:center}
