/* Campaign body only. The existing SAAD header, footer, cookies and actions retain their theme. */
.reference-campaign { --campaign-red:#c81822; --campaign-ink:#2a211e; --campaign-cream:#fbf4eb; background:#fffcf8; color:var(--campaign-ink); font-family:'Muli',Arial,sans-serif; }
.reference-campaign .container { max-width:1200px; }
.reference-campaign h1,.reference-campaign h2,.reference-campaign h3,.reference-campaign h4 { font-family:'Rubik',Arial,sans-serif; font-weight:700; letter-spacing:-1px; color:var(--campaign-ink); }
.reference-campaign h2 { font-size:clamp(32px,3.2vw,48px); line-height:1.12; margin:14px 0 22px; }
.reference-campaign p { font-size:16px; line-height:1.75; color:#776e68; }
.reference-campaign .campaign-kicker { display:block; font:600 11px/1.6 'Rubik',Arial,sans-serif; letter-spacing:1.8px; color:var(--campaign-red); }
.campaign-section { padding:110px 0; }
.giving-hero { position:relative; isolation:isolate; min-height:640px; display:flex; align-items:center; overflow:hidden; border-bottom:5px solid var(--campaign-red); }
.giving-hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 45%; z-index:-2; }
.giving-hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#170d09f5 0%,#170d09d9 28%,#170d0960 58%,#170d0915 100%); z-index:-1; }
.giving-hero-copy { max-width:580px; padding:65px 0; }
.giving-hero .campaign-kicker { color:#ffcc70; font-size:11px; }
.reference-campaign .giving-hero h1 { font-size:clamp(62px,6.3vw,94px); line-height:1; color:#fff; letter-spacing:-3px; margin:24px 0 18px; }
.giving-hero h1 span { color:#ffc15e; }
.reference-campaign .giving-hero h2 { font-size:25px; font-weight:500; line-height:1.35; letter-spacing:-.4px; color:#fff; margin:0 0 20px; }
.reference-campaign .giving-hero p { color:#efe5df; font-size:15px; line-height:1.7; max-width:475px; margin-bottom:28px; }
.campaign-actions { display:flex; flex-wrap:wrap; gap:15px; }
.campaign-button { display:inline-flex; justify-content:center; align-items:center; gap:22px; background:var(--campaign-red); color:#fff; border:1px solid var(--campaign-red); padding:15px 23px; font-size:13px; font-weight:800; border-radius:2px; transition:background .25s,transform .25s,box-shadow .25s; }
.campaign-button:hover,.campaign-button:focus-visible { background:#a81019; color:#fff; transform:translateY(-2px); box-shadow:0 6px 16px #30141518; }
.campaign-button-outline { background:transparent; border-color:#ffffff80; }
.campaign-button-outline:hover { background:#fff; color:#2a211e; }
.campaign-date-strip { background:var(--campaign-cream); border-bottom:1px solid #e9dfd4; padding:35px 0; }
.campaign-date-strip>.container { display:grid; grid-template-columns:210px 1fr 165px; align-items:center; gap:38px; }
.campaign-date { border-right:1px solid #e2d7cb; }
.campaign-date strong { display:block; font:700 25px/1.4 'Rubik',sans-serif; color:var(--campaign-red); }
.campaign-date span { font-size:10px; letter-spacing:1.8px; display:block; margin-top:6px; }
.reference-campaign .campaign-date-strip p { font-size:14px; line-height:1.8; margin:0; color:#65574d; }
.campaign-date-strip a { font-size:12px; font-weight:800; color:var(--campaign-red); display:flex; gap:14px; align-items:center; }
.campaign-section-intro { text-align:center; max-width:740px; margin:0 auto 55px; }
.campaign-section-intro p { max-width:650px; margin:0 auto; }
.initiative-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.campaign-initiative { background:#fff; border:1px solid #e8ded4; display:flex; flex-direction:column; transition:box-shadow .3s,transform .3s; }
.initiative-photo-link { display:block; overflow:hidden; }
.initiative-photo-link img { width:100%; height:300px; transition:transform .6s; }
.initiative-copy { padding:30px; display:flex; flex-direction:column; align-items:flex-start; flex:1; }
.reference-campaign .initiative-copy h3 { font-size:26px; margin:12px 0 10px; letter-spacing:-.6px; }
.reference-campaign .initiative-copy p { font-size:14px; margin-bottom:25px; }
.initiative-tags { display:flex; gap:7px; flex-wrap:wrap; list-style:none; margin:auto 0 25px; padding:0; }
.initiative-tags li { font-size:10px; font-weight:700; background:#faf4eb; padding:5px 9px; border:1px solid #eadfd2; }
.campaign-text-link { font-size:12px; font-weight:800; color:var(--campaign-red); display:inline-flex; align-items:center; gap:15px; }
.campaign-text-link:hover { color:#8a1118; }
.campaign-purpose { background:#2a1e19; color:#fff; padding:44px 0; }
.campaign-purpose>.container { display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; gap:28px; align-items:center; }
.reference-campaign .campaign-purpose h2 { color:#fff; font-size:24px; letter-spacing:-.6px; margin:0; }
.campaign-purpose .container>div { border-left:1px solid #ffffff25; min-height:58px; padding-left:26px; display:flex; align-items:center; gap:13px; font-size:12px; font-weight:700; }
.campaign-purpose i { color:#e6ad4e; font-size:25px; }
.feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:110px; align-items:center; }
.feature-photo { margin:0; position:relative; }
.feature-photo>img { display:block; height:650px; width:100%; object-fit:cover; }
.feature-photo figcaption { position:absolute; bottom:-22px; right:-22px; background:var(--campaign-red); color:white; font-size:13px; font-weight:700; padding:21px 24px; max-width:250px; }
.feature-copy blockquote { border-left:3px solid var(--campaign-red); padding-left:19px; font-size:17px; line-height:1.6; font-weight:800; margin:28px 0; }
.feature-checks { display:grid; grid-template-columns:1fr 1fr; gap:15px 20px; list-style:none; padding:0; margin:26px 0; }
.feature-checks li { font-size:12px; font-weight:700; display:flex; gap:10px; }
.feature-checks li::before { content:'✓'; color:var(--campaign-red); }
.feature-sabala { background:var(--campaign-cream); }
.campaign-more { margin-top:22px; font-size:13px; border-top:1px solid #e5d9cf; padding-top:15px; }
.campaign-more summary { color:#716159; cursor:pointer; font-weight:700; }
.reference-campaign .campaign-more p { font-size:14px; margin-top:18px; }
.campaign-gallery-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:40px; gap:20px; }
.reference-campaign .campaign-gallery-heading h2 { font-size:38px; margin-bottom:0; }
.action-controls { display:flex; gap:10px; }
.action-controls button { border:1px solid #e4d8cd; width:39px; height:39px; background:transparent; color:#625149; }
.action-controls button:hover { background:var(--campaign-red); color:#fff; }
.action-slider { padding:0 0 40px; }
.action-slider .action-photo { display:block; width:100%; height:290px; border:0; border-radius:0; background:#2a211e; }
.action-photo img { object-fit:cover; }
.action-photo>span { font-size:12px; font-weight:700; padding:45px 16px 16px; }
.action-pagination { text-align:center; margin-top:25px; line-height:1; }
.action-pagination .swiper-pagination-bullet-active { background:var(--campaign-red); width:24px; border-radius:4px; }
.campaign-red-banner { padding:90px 0; background:var(--campaign-red); position:relative; overflow:hidden; isolation:isolate; }
.campaign-red-banner::after { content:''; position:absolute; right:-150px; top:-160px; width:540px; height:540px; border:65px solid #ffffff09; outline:65px solid #ffffff05; border-radius:50%; z-index:-1; }
.campaign-red-banner .container>div { max-width:860px; }
.campaign-red-banner .campaign-kicker { color:#ffcc70; }
.reference-campaign .campaign-red-banner h2 { color:#fff; font-size:48px; }
.reference-campaign .campaign-red-banner p { color:#ffeded; max-width:700px; }
.campaign-red-banner a { display:inline-flex; align-items:center; gap:20px; color:#fff; font-size:13px; font-weight:800; margin-top:18px; }
.campaign-donate { background:var(--campaign-cream); }
.campaign-donate-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; align-items:start; }
.giving-guide { padding-top:30px; }
.giving-guide-links { display:grid; gap:12px; margin:32px 0 20px; }
.giving-guide-links>a { display:flex; align-items:center; gap:15px; padding:17px; border:1px solid #e8d9cb; background:#fff; transition:border-color .25s,transform .25s; }
.giving-guide-links>a>i:first-child { color:var(--campaign-red); border:1px solid #f1e1d2; padding:8px; line-height:1; }
.giving-guide-links>a>i:last-child { margin-left:auto; color:var(--campaign-red); }
.giving-guide-links strong { display:block; font-size:14px; }
.giving-guide-links small { display:block; font-size:11px; color:#80756c; }
.giving-guide-links>a:hover { border-color:var(--campaign-red); transform:translateX(3px); }
.reference-campaign .giving-guide-note { font-size:12px; }
.giving-assurance { border-top:1px solid #e4d6c7; padding-top:25px; margin-top:35px; display:flex; gap:15px; align-items:center; font-size:13px; color:#716257; }
.giving-assurance i { font-size:28px; color:var(--campaign-red); }
@media(hover:hover) { .campaign-initiative:hover { transform:translateY(-5px); box-shadow:0 15px 35px #3021170b; } .campaign-initiative:hover img { transform:scale(1.04); } }
@media(max-width:1199px) { .reference-campaign .container { max-width:1080px; } .feature-grid { gap:65px; } .feature-photo>img { height:560px; } .campaign-donate-grid { gap:40px; } .campaign-purpose .container>div { padding-left:18px; gap:10px; } .giving-hero { min-height:610px; } }
@media(max-width:991px) { .campaign-section { padding:80px 0; } .feature-grid { gap:40px; } .feature-photo>img { height:520px; } .feature-photo figcaption { right:-10px; font-size:11px; padding:16px; } .feature-checks { grid-template-columns:1fr; gap:10px; } .initiative-photo-link img { height:240px; } .initiative-copy { padding:24px; } .campaign-purpose>.container { grid-template-columns:1fr 1fr; } .campaign-purpose .container>div { border:0; padding:0; } .campaign-date-strip>.container { grid-template-columns:160px 1fr; gap:25px; } .campaign-date-strip a { grid-column:2; } .campaign-donate-grid { grid-template-columns:1fr; gap:38px; max-width:740px; margin:auto; } .giving-guide { padding-top:0; } .reference-campaign .giving-guide h2 br { display:none; } .action-slider .action-photo { height:260px; } }
@media(max-width:767px) { .campaign-section { padding:65px 0; } .giving-hero { min-height:590px; } .giving-hero-photo { object-position:65% center; } .giving-hero::before { background:linear-gradient(90deg,#170d09ed,#170d097d),linear-gradient(0deg,#170d0955,transparent); } .giving-hero-copy { max-width:480px; padding:60px 0; } .reference-campaign .giving-hero h1 { font-size:68px; letter-spacing:-2px; } .reference-campaign .giving-hero h2 { font-size:22px; } .giving-hero .campaign-kicker { font-size:9px; letter-spacing:1px; } .campaign-date-strip>.container { grid-template-columns:1fr; gap:18px; } .campaign-date { border:0; } .campaign-date-strip a { grid-column:auto; } .campaign-date-strip { padding:28px 0; } .campaign-section-intro { margin-bottom:32px; } .initiative-grid { grid-template-columns:1fr; gap:24px; } .initiative-photo-link img { height:auto; aspect-ratio:1.7; } .initiative-copy { padding:24px; } .campaign-purpose>.container { grid-template-columns:1fr; gap:18px; } .campaign-purpose .container>div { min-height:32px; } .feature-grid { grid-template-columns:1fr; gap:55px; } .feature-photo { margin-right:12px; } .feature-photo>img { height:auto; aspect-ratio:1.05; } .feature-photo figcaption { bottom:-15px; right:-12px; font-size:12px; } .feature-sabala .feature-copy { order:2; } .feature-sabala .feature-photo { order:1; } .feature-checks { grid-template-columns:1fr 1fr; } .reference-campaign .campaign-gallery-heading h2 { font-size:32px; } .action-slider .action-photo { height:300px; } .campaign-red-banner { padding:60px 0; } .reference-campaign .campaign-red-banner h2 { font-size:34px; } .campaign-red-banner h2 br { display:none; } .campaign-donate-grid { gap:35px; } .reference-campaign h2 { font-size:34px; } }
@media(max-width:414px) { .reference-campaign .giving-hero h1 { font-size:58px; } .campaign-button { font-size:12px; padding:13px 17px; gap:12px; } .campaign-actions { gap:10px; } .reference-campaign h2 { font-size:32px; } .feature-checks { grid-template-columns:1fr; } .action-slider .action-photo { height:260px; } .campaign-kicker { letter-spacing:1.2px!important; } .campaign-purpose .container>div { font-size:12px; } }
@media(prefers-reduced-motion:reduce) { .campaign-initiative:hover,.giving-guide-links>a:hover,.campaign-button:hover { transform:none; } }
@media(prefers-reduced-motion:no-preference) { .giving-hero-copy { animation:campaign-entrance .8s ease-out both; } }
@keyframes campaign-entrance { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
