/* Quality pass shared mechanics (menu, tap targets, no word breaks). Each site keeps its own look below. */
[hidden]{display:none!important}
.mbtn,.mpanel{display:none}
h1,h2,h3,h4{overflow-wrap:normal;word-break:normal;hyphens:manual}
.qp-more{display:flex;margin:32px auto 0;min-height:48px;align-items:center;padding:0 28px;border-radius:999px;border:1px solid var(--qp-line);background:#fff;color:var(--qp-ink);font:500 16px/1 Inter,sans-serif;cursor:pointer;transition:transform .2s ease}
.qp-more:hover{transform:translateY(-1px)}
.qp-in{animation:qpin .45s ease both}@keyframes qpin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (max-width:900px){
 nav ul{display:none!important}
 .mbtn{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;flex:0 0 44px;border-radius:999px;border:1px solid var(--qp-line);background:#fff;cursor:pointer;margin-left:8px}
 .mbtn i{display:block;width:18px;height:2px;background:var(--qp-ink);border-radius:2px;transition:transform .25s ease}
 .mbtn.on i:first-child{transform:translateY(4px) rotate(45deg)}.mbtn.on i:last-child{transform:translateY(-4px) rotate(-45deg)}
 .mpanel:not([hidden]){display:grid;position:absolute;left:12px;right:12px;top:calc(100% + 6px);background:#fff;border:1px solid var(--qp-line);border-radius:20px;padding:8px 20px 20px;box-shadow:0 10px 26px -4.5px rgba(0,0,0,.12);animation:mp .22s ease;z-index:60}
 .mpanel a:not(.btn):not(.qp-cta){display:flex;align-items:center;min-height:48px;font:500 18px/1 Inter,sans-serif;color:var(--qp-ink);text-decoration:none;border-bottom:1px solid var(--qp-line)}
 .mpanel .qp-cta{margin-top:14px;display:flex;justify-content:center;align-items:center;min-height:48px;border-radius:999px;background:var(--qp-acc);color:#fff!important;font:500 16px/1 Inter,sans-serif;text-decoration:none}
 footer a{display:inline-flex;align-items:center;min-height:44px}
}
@keyframes mp{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.mpanel,.qp-in{animation:none!important}.mbtn i,.qp-more{transition:none}}
/* TBA: editorial, ink + deep red, generous white */
:root{--qp-ink:#161212;--qp-line:#EAEAEA;--qp-acc:#B02B2C}
nav .bar{position:relative}
nav .wm{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:900px){nav .bar{display:flex;align-items:center}nav .wm{margin-right:auto}nav .btn{min-height:44px}}
.cms-c{height:100%}
.dg{position:relative}.dg h3 a{color:inherit;text-decoration:none}.dg h3 a::after{content:"";position:absolute;inset:0}
.dg{transition:transform .25s ease}.dg:hover{transform:translateY(-2px)}
@media (max-width:760px){footer .g{grid-template-columns:1fr 1fr!important;gap:24px}footer .g>div:first-child{grid-column:1/-1}}
@media (max-width:900px){.v7-tabs button{min-height:44px}}
/* pass 2: stat strip, help swipe, editorial red band */
.qp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px}
.qp-stats a{display:flex;flex-direction:column;gap:6px;padding:22px 22px 20px;border-radius:16px;background:#FBF1F1;color:inherit;text-decoration:none;border:1px solid #F1DADA;transition:transform .2s}
.qp-stats a:hover{transform:translateY(-2px)}
.qp-stats b{font-size:clamp(2rem,4vw,2.8rem);line-height:1;color:#B02B2C;font-weight:600;letter-spacing:-.02em}
.qp-stats span{font-size:.92rem;opacity:.75}
.hp{align-items:stretch}.hp>.card{height:auto}
#join:not(h3){background:#B02B2C!important;color:#fff}#join .eb,#join h2,#join .k,#join p{color:#fff!important}
#join .btn{background:#fff!important;color:#B02B2C!important;border-color:#fff!important}
.cms-back{display:inline-flex;align-items:center;min-height:44px}
nav ul a[href="give.html"]{padding-inline:10px}
@media(max-width:640px){
 .qp-stats{grid-template-columns:1fr 1fr}.qp-stats a:last-child{grid-column:1/-1}
 .hp{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:80%;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}
 .hp>.card{scroll-snap-align:start}
}
@media(prefers-reduced-motion:reduce){.qp-stats a{transition:none}}
.qp-vids{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px}
.qp-vid{display:flex;flex-direction:column;gap:6px;color:inherit;text-decoration:none}
.qp-vid img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px}
.qp-vid h3{font-size:1rem;margin:0}
@media(max-width:900px){.qp-vids{grid-template-columns:1fr 1fr}}
@media(max-width:640px){
 .qp-vids{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory}.qp-vid{scroll-snap-align:start}
 .dg,.cms-c{display:grid!important;grid-template-columns:38% 1fr;gap:12px;align-items:start}
 .dg img,.cms-c img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;height:auto!important}
 .dg p,.cms-c p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.85rem}
 .dg h3,.cms-c h3{font-size:1rem;margin:2px 0 4px}
}
.qp-vid,.qp-vid *{text-decoration:none!important;color:inherit!important}
.sp-w a.qp-btn,a.qp-btn{display:inline-flex;align-items:center;min-height:46px;padding:0 22px;border-radius:999px;background:#B02B2C;color:#fff!important;text-decoration:none!important;font-weight:500}
@media(max-width:640px){
 .cms-g .cms-c{padding:10px!important;align-items:center}
 .cms-g .cms-c img{aspect-ratio:1/1!important;height:auto!important;max-height:none}
 .cms-g .cms-c>div{padding:0!important}
 .cms-g .cms-c h3{font-size:1.02rem!important;line-height:1.25}
 .cms-g .cms-c .cms-k{font-size:.66rem}
}
body.sp nav#nav{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #EFE6E6}body.sp nav .bar{color:#111}
