@import url('https://fonts.googleapis.com/css2?family=Kaushan+Script&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@1,500;1,600&display=swap');
:root{--red:#9c2724;--dark:#30231e;--cream:#faf6ef;--muted:#736963;--line:#e3d9ce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--dark);background:var(--cream);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit}img{max-width:100%}h1,h2,h3,h4,p{margin:0}p+p{margin-top:18px}h1,h2,h3,h4{font-family:Manrope,sans-serif;line-height:1.17}h2{font-size:clamp(30px,3.4vw,48px);letter-spacing:-1.8px;font-weight:800}h2 em{color:var(--red);font-family:'Playfair Display',Georgia,serif;font-weight:500}h3{font-size:24px}a:focus-visible{outline:3px solid #b5802d;outline-offset:5px}.skip{position:absolute;top:-90px;background:white;padding:12px;z-index:10}.skip:focus{top:0}.header{height:100px;padding:15px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:var(--cream)}.header img{display:block;max-height:70px;object-fit:contain}.header nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:700}.header nav a{text-decoration:none}.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;padding:16px 24px;background:var(--red);color:#fff;text-decoration:none;font-size:14px;font-weight:700;border-radius:3px;transition:background .2s,transform .2s}.button:hover{background:#761c1a;transform:translateY(-2px)}.button.small{padding:12px 20px}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:800;color:var(--red)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:575px;max-width:1600px;margin:auto}.hero-copy{padding:65px 9% 65px 10%;align-self:center}.brand-line{font-size:13px;margin-top:18px;color:var(--muted)}h1{margin:30px 0 24px}h1 span{display:block;text-transform:uppercase;font-size:clamp(23px,3vw,42px);letter-spacing:7px}h1 em{display:block;color:var(--red);font-family:'Playfair Display',Georgia,serif;font-size:clamp(65px,8.2vw,120px);font-weight:500;letter-spacing:-6px;line-height:1.1}.hero-sub{max-width:340px;font-size:15px;margin-bottom:28px}.text-link{font-size:13px;text-underline-offset:6px;font-weight:700}.hero-copy>.text-link{display:block;margin-top:22px}.hero-photo{position:relative;overflow:hidden;background:#312a1f}.hero-photo>img{position:absolute;width:auto;max-width:none;height:440%;top:0;right:-19%;}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(32,20,11,.65),transparent 45%)}.photo-note{position:absolute;bottom:35px;left:35px;color:white;z-index:1;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:28px;line-height:1.3}.ribbon{padding:19px 5%;display:flex;justify-content:center;gap:26px;background:var(--red);color:white;text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:700}.section{padding:85px max(5%,calc((100vw - 1240px)/2))}.intro{text-align:center;background:#fff}.intro h2{margin:22px 0 28px}.intro>p:not(.eyebrow){max-width:820px;margin-left:auto;margin-right:auto;font-size:17px}.intro .muted{font-size:14px!important;color:var(--muted)}.section-heading{margin-bottom:35px}.section-heading .eyebrow{margin-bottom:18px}.moment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.moment{min-height:390px;border-radius:6px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;color:white;background-size:cover;background-position:center}.thanksgiving{background-image:linear-gradient(90deg,rgba(45,24,8,.87),rgba(45,24,8,.55)),url('/assets/food-basket.png')}.christmas{background-image:linear-gradient(90deg,rgba(10,39,36,.9),rgba(10,39,36,.5)),url('/assets/christmas-box.png')}.moment-number{font-family:'Playfair Display',serif;font-style:italic;font-size:40px;color:#f7d2a5}.moment .eyebrow{color:#f5cf91;margin-bottom:12px}.moment h3{font-size:32px;margin-bottom:16px}.moment p:last-child{font-size:15px;max-width:440px}.box-section{text-align:center;background:#fff}.box-section h2{margin:18px 0}.box-section>p:not(.eyebrow){color:var(--muted)}.box-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:44px 0}.box-grid article{padding:30px 20px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.box-grid article:nth-child(4n){border-right:0}.box-grid article:nth-child(n+5){border-bottom:0}.box-grid svg{width:36px;height:36px;color:var(--red);margin-bottom:16px}.box-grid h3{font-size:15px;margin-bottom:9px}.box-grid p{font-size:14px;color:var(--muted);max-width:185px;margin:auto}.dignity{display:flex;align-items:center;gap:30px;background:var(--red);color:white;text-align:left;padding:35px 40px;border-radius:4px}.dignity>span{font-size:50px;color:#f2c78b}.dignity h3{font-size:22px}.dignity p{margin-top:12px;font-size:15px}.vegas{min-height:420px;text-align:center;padding:60px 5% 190px;background:#fff url('/assets/holidays/las-vegas-skyline.webp') center bottom / 100% auto no-repeat}.vegas>div{background:linear-gradient(#fff 85%,#ffffff00);padding-bottom:20px}.vegas h2{margin:18px 0 22px;font-size:36px}.community-list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:1px}.community-list span{border-left:1px solid var(--line);padding-left:12px}.seed{font-family:'Playfair Display',serif;font-size:30px;font-style:italic;color:var(--red);margin-top:24px}.partnership{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:45px}.partnership h2{margin:18px 0 22px}.partnership>div+div{padding-top:38px;font-size:16px}.partnership .text-link{display:inline-block;margin-top:24px;color:var(--red)}.lead{font-size:18px}.impact{padding-top:35px}.impact h2{font-size:25px;letter-spacing:-.7px;margin-bottom:25px}.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.impact-grid article{padding:28px;border-right:1px solid var(--line)}.impact-grid article:first-child{padding-left:0}.impact-grid article:last-child{border:0}.impact h3{margin:18px 0 14px;font-size:26px;color:var(--red)}.impact p{font-size:14px;color:var(--muted)}.sponsorship{background:#eee8df;text-align:center}.sponsorship h2{margin:18px 0 40px}.sponsor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;text-align:left}.sponsor{background:#fffdf9;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;border:1px solid #ded5c8}.tier-head{background:#a6532d;color:white;padding:25px}.silver .tier-head{background:#626e73}.gold .tier-head{background:#916315}.platinum .tier-head{background:#174d40}.tier-head p{font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:700}.tier-head h3{font-size:36px;margin-top:8px}.tier-body{padding:25px 22px;display:flex;flex-direction:column;flex:1}.tier-body h4{font-size:18px;min-height:65px;color:var(--red)}.includes{font-size:12px;font-weight:700;margin:16px 0 0}.tier-body ul{padding:0;list-style:none;margin:24px 0 28px}.tier-body li{font-size:13px;line-height:1.6;padding:0 0 13px 17px;position:relative}.tier-body li:before{content:'✓';position:absolute;left:0;color:var(--red);font-size:11px}.tier-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px}.tier-bottom p{font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:800;min-height:52px}.tier-bottom .button{width:100%;font-size:11px;padding:12px 8px;gap:8px}.disclosure{font-size:12px;color:#625a53;max-width:850px;margin:28px auto 0}.in-kind{text-align:center}.in-kind h2{margin:18px 0}.resource-tags{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:900px;margin:30px auto 40px}.resource-tags span{border:1px solid var(--line);border-radius:30px;padding:9px 18px;font-size:13px;background:#fffaf4}.offer{padding:30px;background:#e9ded0;display:flex;justify-content:space-between;align-items:center;gap:25px;text-align:left;border-radius:5px}.offer h3{font-size:23px;color:var(--red)}.offer p{font-size:14px;margin-top:8px}.offer .button{flex-shrink:0}.giving{background:#173e34;color:white;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.giving .eyebrow{color:#efd2a4}.giving h2{font-size:39px;margin:22px 0 25px}.giving h2 em{color:#efd2a4}.giving-copy>p:not(.eyebrow){color:#e2e9e2;font-size:16px}.giving .giving-note{font-size:12px!important}.giving-form{background:white;border-radius:6px;padding:20px;color:var(--dark);min-height:360px}givebutter-widget{display:block;min-height:290px}.giving-form>p{font-size:12px;text-align:center;padding-top:15px}.giving-form a{color:var(--red)}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:35px 5%;font-size:12px}footer img{display:block}footer p+p{margin:0}.copyright{width:100%;border-top:1px solid var(--line);padding-top:20px;color:var(--muted)}
@media(min-width:1600px){.hero-photo>img{right:-12%}}@media(max-width:1000px){.hero{min-height:520px}.hero-copy{padding:45px 8%}.hero-photo>img{right:-50%}.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tier-body h4{min-height:0}.partnership{gap:35px}.giving{gap:30px}.giving h2{font-size:32px}.vegas{padding-bottom:145px}.header nav{gap:20px}}@media(max-width:650px){html{scroll-padding-top:20px}.header{height:83px;padding:12px 5%}.header img{width:125px}.header nav>a:not(.button){display:none}.header .button{font-size:12px;padding:10px 15px}.hero{grid-template-columns:1fr}.hero-copy{padding:38px 6% 35px}.hero h1{margin-top:22px}h1 span{font-size:26px;letter-spacing:6px}h1 em{font-size:83px;letter-spacing:-4px}.hero-photo{height:300px}.hero-photo>img{height:440%;right:-1%}.photo-note{font-size:22px;bottom:22px;left:25px}.ribbon{gap:10px;font-size:9px;letter-spacing:1px;flex-wrap:wrap}.ribbon>span:last-child{display:none}.section{padding:55px 6%}h2{font-size:31px;letter-spacing:-1px}.intro h2 br:first-child{display:none}.intro>p:not(.eyebrow){font-size:15px}.moment-grid{grid-template-columns:1fr}.moment{min-height:355px;padding:28px}.moment h3{font-size:29px}.box-grid{grid-template-columns:repeat(2,1fr);margin:28px 0}.box-grid article{padding:24px 12px}.box-grid article:nth-child(2n){border-right:0}.box-grid article:nth-child(n+5){border-bottom:1px solid var(--line)}.box-grid article:nth-child(n+7){border-bottom:0}.box-grid h3{font-size:14px}.dignity{padding:28px;gap:0}.dignity>span{display:none}.dignity h3{font-size:22px}.vegas{padding:45px 6% 90px;background-size:auto 600px}.vegas h2{font-size:29px}.vegas .eyebrow{font-size:9px}.community-list{font-size:9px}.seed{font-size:25px}.partnership{grid-template-columns:1fr;gap:0;padding-bottom:20px}.partnership>div+div{padding-top:20px}.impact{padding-top:25px}.impact-grid{grid-template-columns:1fr 1fr}.impact-grid article{padding:22px 16px}.impact-grid article:first-child{padding-left:16px}.impact-grid article:nth-child(2n){border-right:0}.impact-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.impact h2{font-size:22px}.impact h3{font-size:24px}.impact p{font-size:13px}.sponsor-grid{grid-template-columns:1fr}.tier-head{display:flex;justify-content:space-between;align-items:center;padding:22px}.tier-head h3{font-size:32px;margin:0}.tier-body{padding:25px}.tier-body h4{font-size:21px}.tier-body li{font-size:14px}.tier-bottom p{min-height:0;margin-bottom:16px}.tier-bottom .button{font-size:13px;padding:14px}.offer{flex-direction:column;align-items:flex-start;padding:25px}.resource-tags{gap:8px}.resource-tags span{font-size:12px;padding:7px 12px}.giving{grid-template-columns:1fr;gap:30px}.giving h2{font-size:32px}.giving-form{padding:12px;min-width:0}footer{gap:16px}footer>p:not(.copyright){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Keep the full logo legible against the light holiday palette. */
.header img,footer img{filter:brightness(0);opacity:.83}
/* Reveal only the skyline portion of the reference artwork. */
.vegas{position:relative;background:#fff;padding-bottom:clamp(110px,14vw,190px)}
.vegas:after{content:'';position:absolute;inset:auto 0 0;height:clamp(90px,12vw,160px);background:url('/assets/holidays/las-vegas-skyline.webp') center bottom / 100% auto no-repeat;pointer-events:none}
@media(max-width:650px){.vegas{padding-bottom:105px}.vegas:after{height:80px;background-size:auto 650px}}

/* Original flyer photography, optimized for the web. */
.hero-photo>img{inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:78% center}
.moment{position:relative;display:flex;justify-content:flex-start;min-height:0;padding:0;overflow:hidden;background-image:none}
.thanksgiving{background-color:#3b2312}
.christmas{background-color:#05254d}
.moment-art{display:block;width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;object-position:left bottom}
.moment-number{position:absolute;right:22px;top:12px;text-shadow:0 2px 8px #0008}
.moment>div{padding:30px;flex:1}
.partnership-photo{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;border-radius:5px;margin-top:28px}
.vegas{padding-bottom:clamp(180px,23vw,320px)}
.vegas:after{height:clamp(170px,22vw,310px);background-size:100% auto}
@media(max-width:650px){
 .hero-photo>img{object-position:right center}
 .moment>div{padding:25px}
 .partnership-photo{margin-bottom:10px}
 .vegas{padding-bottom:160px}
 .vegas:after{height:150px;background-size:auto 225px}
}
/* Fit the supplied logo artwork while hiding its transparent outer margins. */
.hero h1.hero-logo{position:relative;aspect-ratio:1600 / 710;width:100%;margin:30px 0 24px;overflow:hidden}
.hero-logo img{position:absolute;width:120%;max-width:none;height:auto;left:-14.75%;top:-36.62%}
@media(max-width:650px){.hero h1.hero-logo{margin:24px 0}}
/* Flyer-style hero: photograph fading into a white field behind the logo. */
.hero.holiday-banner{position:relative;display:block;width:100%;max-width:none;min-height:0;aspect-ratio:1558 / 608;overflow:hidden;background:#fff}
.holiday-banner-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 5%}
.holiday-banner-gradient{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0) 40%,rgba(255,255,255,.25) 51%,rgba(255,255,255,.85) 67%,#fff 83%)}
.hero.holiday-banner h1.hero-logo{position:absolute;left:53%;top:28%;width:46%;margin:0;overflow:hidden}
@media(max-width:650px){
 .hero.holiday-banner{aspect-ratio:auto;height:530px}
 .holiday-banner-photo{height:380px;object-position:35% top}
 .holiday-banner-gradient{background:linear-gradient(180deg,rgba(255,255,255,0) 43%,rgba(255,255,255,.65) 60%,#fff 74%)}
 .hero.holiday-banner h1.hero-logo{left:8%;top:auto;bottom:25px;width:84%;margin:0}
}
/* Give the portrait more separation from the desktop campaign title. */
@media(min-width:651px){.holiday-banner-photo{left:-7%;right:auto}}
/* Keep every holiday navigation destination available on small screens. */
@media(max-width:650px){
 .header{height:auto;min-height:83px;flex-wrap:wrap;gap:12px}
 .header nav{width:100%;justify-content:space-between;gap:12px;padding-bottom:4px}
 .header nav>a:not(.button){display:inline-block}
}
/* Match the Hope Movement mark exactly to the holiday button color. */
.header>a:first-child,footer>a:first-child{background:var(--red);mask:url('/assets/hope-logo-color.png') center / contain no-repeat;-webkit-mask:url('/assets/hope-logo-color.png') center / contain no-repeat}
.header>a:first-child img,footer>a:first-child img{opacity:0}
/* Holiday ornaments separate the larger campaign banner phrases. */
.ribbon{align-items:center;font-size:clamp(13px,1.25vw,18px);gap:24px;padding:22px 5%;letter-spacing:1.8px}
.ribbon-ornament{flex:0 0 auto;width:21px;height:27px;color:#f5d4a3}
@media(max-width:650px){
 .ribbon{flex-direction:column;gap:12px;font-size:14px;letter-spacing:1.5px;padding:24px 5%}
 .ribbon>span:last-child{display:inline}
 .ribbon-ornament{width:18px;height:23px}
}
.moment-art{object-position:center}

/* Three clear ways to participate, inspired by the campaign flyer. */
.impact{background:#fff;padding-top:55px;padding-bottom:75px}
.impact h2{position:relative;isolation:isolate;max-width:1030px;margin:0 auto 50px;padding:22px 36px;text-align:center;color:#fff;font-size:clamp(22px,2.6vw,36px);text-transform:uppercase;letter-spacing:1px;line-height:1.3}
.impact h2:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--red);clip-path:polygon(2% 8%,19% 3%,47% 5%,70% 0,96% 7%,99% 17%,98% 30%,100% 46%,98% 59%,99% 80%,96% 93%,75% 96%,48% 94%,24% 100%,3% 93%,1% 81%,2% 65%,0 49%,2% 32%,1% 17%)}
.impact h2 span{font-family:'Kaushan Script',cursive;font-size:1.45em;text-transform:none;letter-spacing:0;margin-right:12px;font-weight:400}
.impact-grid{grid-template-columns:repeat(3,minmax(0,1fr));border:0;gap:0;text-align:center}
.impact-grid article,.impact-grid article:first-child{padding:10px 32px;display:flex;flex-direction:column;align-items:center;border:0;position:relative}
.impact-grid article+article:before{content:'';position:absolute;left:0;top:35px;bottom:35px;width:1px;background:linear-gradient(transparent,#b24e49 20%,#b24e49 80%,transparent)}
.impact-icon{width:110px;height:110px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;border:5px solid #fff;outline:1px solid #e2c2bd;box-shadow:0 8px 20px #9c272416}
.impact-icon svg{width:62px;height:66px}
.impact h3{font-size:30px;text-transform:uppercase;font-weight:800;letter-spacing:.5px;margin:22px 0 15px}
.impact p{color:var(--dark);font-size:15px;line-height:1.7;max-width:290px;margin-bottom:22px}
.impact .text-link{margin-top:auto;color:var(--red);font-size:13px}
@media(max-width:650px){
 .impact h2{padding:22px 18px;font-size:20px;margin-bottom:30px}
 .impact h2 span{display:block;margin:0 0 5px;font-size:36px}
 .impact-grid{grid-template-columns:1fr;gap:32px}
 .impact-grid article,.impact-grid article:first-child{padding:12px 15px 30px;border:0}
 .impact-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}
 .impact-grid article+article:before{display:none}
 .impact h3{font-size:28px}
}
/* Use the campaign brush script consistently across editorial accents. */
h2 em,.seed,.photo-note,.moment-number{font-family:'Kaushan Script',cursive;font-style:normal;font-weight:400}
/* Uppercase sponsorship category titles and calls to action. */
.sponsor .tier-head p,.sponsor .tier-bottom .button{text-transform:uppercase}
/* Keep navigation available while scrolling the holiday page. */
.header{position:sticky;top:0;z-index:100;box-shadow:0 2px 12px #30231e0a}
html{scroll-padding-top:120px}
@media(max-width:650px){html{scroll-padding-top:160px}}

.button-gift{width:18px;height:18px;flex:0 0 auto}
/* Give the closing campaign message a stronger visual presence. */
.giving h2{font-size:clamp(44px,4.4vw,66px);line-height:1.12;letter-spacing:-1.8px}
.giving h2 em{display:block;margin-top:20px;line-height:1.22}
@media(max-width:650px){.giving h2{font-size:clamp(38px,10.5vw,52px);letter-spacing:-1px}}
/* Larger, easier-to-read holiday navigation. */
.header nav{font-size:16px}
.header .button.small{font-size:16px}
@media(max-width:650px){
 .header nav{font-size:15px;gap:10px}
 .header .button.small{font-size:15px;padding:10px 12px;gap:10px}
}
/* Let the giving widget sit directly on the green section background. */
.giving-form{background:transparent;padding:0;border-radius:0;color:#e2e9e2}
.giving-form a{color:#efd2a4}
@media(max-width:650px){.giving-form{padding:0}}
/* Holiday partnership inquiries. */
.partner-inquiry{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;background:var(--cream)}
.inquiry-intro h2{margin:20px 0 25px}
.inquiry-intro>p:last-child{color:var(--muted);max-width:430px}
.holiday-interest-form{display:flex;flex-direction:column;gap:22px;min-width:0}
.required-note,.field-hint{font-size:12px;color:var(--muted)}
.inquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.full-field{grid-column:1 / -1}
.holiday-interest-form label,.holiday-interest-form legend{font-weight:700;font-size:14px}
.holiday-interest-form input:not([type=checkbox]),.holiday-interest-form select,.holiday-interest-form textarea{display:block;width:100%;min-width:0;margin-top:8px;padding:13px 14px;border:1px solid #c9beb2;border-radius:4px;background:white;color:var(--dark);font:inherit;font-weight:400}
.holiday-interest-form textarea{resize:vertical}
.holiday-interest-form :is(input,select,textarea,button):focus-visible{outline:3px solid #b5802d;outline-offset:3px}
.holiday-interest-form fieldset{padding:0;border:0;margin:0}
.holiday-interest-form .field-hint{margin-top:6px}
.inquiry-options{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:14px}
.inquiry-options label{display:flex;align-items:center;gap:8px;font-size:13px}
.inquiry-options input{width:18px;height:18px;accent-color:var(--red);flex-shrink:0}
.holiday-interest-form .button{border:0;align-self:flex-start;cursor:pointer;font-family:inherit}
.holiday-interest-form .button:disabled{opacity:.6;cursor:wait;transform:none}
.holiday-form-status{font-size:14px;color:var(--red);margin:0;min-height:24px}
@media(max-width:900px){.partner-inquiry{grid-template-columns:1fr;gap:35px}.inquiry-intro>p:last-child{max-width:650px}}
@media(max-width:450px){.inquiry-fields{grid-template-columns:1fr}.full-field{grid-column:auto}.inquiry-options{flex-direction:column}}

/* Match the home page footer with the holiday red palette. */
.site-footer {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(220px, 0.6fr);
  gap: 30px;
  padding: 48px clamp(18px, 5vw, 64px);
  background: var(--red);
  color: rgba(255, 255, 255, 0.76);
}

.site-footer h2 {
  margin: 0 0 10px;
  color: white;
  font-size: 1.35rem;
}

.site-footer p,
.site-footer address {
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-style: normal;
}

.footer-about {
  max-width: 920px;
}

.footer-about p + p {
  margin-top: 20px;
}

.site-footer a {
  color: white;
}

.footer-verification {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}

.verification-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(96px, 10vw, 132px);
  aspect-ratio: 1;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.96);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.verification-badge:hover,
.verification-badge:focus-visible {
  border-color: rgba(252, 212, 0, 0.72);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
  transform: translateY(-2px);
  outline: none;
}

.verification-badge img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.site-footer .copyright {
  grid-column: 1 / -1;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}


.site-footer{align-items:start;font-size:1rem}
.site-footer h2{letter-spacing:normal}
.site-footer p,.site-footer address{font-size:1.08rem}
.site-footer .verification-badge img{filter:none;opacity:1}
.site-footer .copyright{display:block}
@media(max-width:1080px){.site-footer{grid-template-columns:1fr}}
/* Refined inquiry controls with clear selected and keyboard-focus states. */
.holiday-interest-form input:not([type=checkbox]),.holiday-interest-form select,.holiday-interest-form textarea{
 border:1px solid #ddd3c8;border-radius:10px;background:#fffdf9;padding:15px 16px;
 font-size:16px;line-height:1.5;box-shadow:0 2px 5px #30231e04;
 transition:border-color .18s,box-shadow .18s,background .18s;
}
.holiday-interest-form input:not([type=checkbox]):hover,.holiday-interest-form select:hover,.holiday-interest-form textarea:hover{border-color:#bda99a}
.holiday-interest-form :is(input:not([type=checkbox]),select,textarea):focus{
 outline:none;border-color:var(--red);background:#fff;box-shadow:0 0 0 4px #9c272414;
}
.holiday-interest-form input::placeholder,.holiday-interest-form textarea::placeholder{color:#91847b}
.holiday-interest-form select{
 appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:48px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%239c2724' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 16px center;
}
.inquiry-options{display:grid;grid-template-columns:1fr;gap:10px}
.inquiry-options label{
 cursor:pointer;padding:16px 18px;border:1px solid #ddd3c8;border-radius:10px;background:#fffdf9;
 gap:12px;font-size:14px;font-weight:600;min-height:58px;
 transition:background .18s,border-color .18s,box-shadow .18s;
}
.inquiry-options label:hover{border-color:#bda99a;background:#fff}
.inquiry-options label:has(input:checked){border-color:var(--red);background:#f7eae5;color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
.inquiry-options label:has(input:focus-visible){outline:3px solid #b5802d;outline-offset:3px}
.inquiry-options input{
 appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:0;border:1.5px solid #b9aca0;
 border-radius:6px;background:#fff;display:grid;place-content:center;cursor:pointer;outline:none;
}
.inquiry-options input:checked{background:var(--red);border-color:var(--red)}
.inquiry-options input:checked:after{content:'';width:6px;height:11px;border:solid white;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.holiday-interest-form .button{border-radius:8px;min-height:52px;padding:16px 24px}
@media(forced-colors:active){.inquiry-options input{appearance:auto}.inquiry-options input:checked:after{display:none}}
@media(prefers-reduced-motion:reduce){.holiday-interest-form input,.holiday-interest-form select,.holiday-interest-form textarea,.inquiry-options label{transition:none}}

/* Clear involvement actions and tighter header icon spacing. */
.impact .button{margin-top:auto;font-size:13px;padding:13px 18px}
.header .button.small{gap:8px}
/* Evergreen and holly frame the involvement heading. */
.impact h2{color:var(--red);padding:28px 95px;border-top:1px solid #dfcda9;border-bottom:1px solid #dfcda9;background:linear-gradient(90deg,#faf6ef00,#faf6ef 25%,#faf6ef 75%,#faf6ef00)}
.impact h2:before,.impact h2:after{content:'';position:absolute;top:50%;width:85px;height:85px;inset:auto;z-index:0;clip-path:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%232c5944' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M18 83 70 18M25 74 15 49M25 74 51 76M34 64 24 38M34 64 61 65M43 52 34 27M43 52 69 54M53 40 47 17M53 40 77 41M62 29 60 12M62 29 82 28'/%3E%3C/g%3E%3Cpath d='M48 68Q70 42 82 53Q74 72 48 68M48 68Q43 86 66 91Q75 76 48 68' fill='%233b7050'/%3E%3Cg fill='%239c2724'%3E%3Ccircle cx='48' cy='68' r='6'/%3E%3Ccircle cx='39' cy='73' r='5'/%3E%3Ccircle cx='48' cy='79' r='5'/%3E%3C/g%3E%3Cpath d='m85 8 2 6 6 2-6 2-2 6-2-6-6-2 6-2Z' fill='%23bd924d'/%3E%3C/svg%3E") center / contain no-repeat;pointer-events:none}
.impact h2:before{left:0;top:50%;transform:translateY(-50%)}
.impact h2:after{right:0;top:50%;transform:translateY(-50%) scaleX(-1)}
@media(max-width:650px){.impact h2{padding:25px 48px;font-size:17px}.impact h2 span{font-size:32px}.impact h2:before,.impact h2:after{width:52px;height:66px}}
/* Keep the involvement heading free of greenery decorations. */
.impact h2:before,.impact h2:after{display:none}
.impact h2{padding-left:24px;padding-right:24px}
/* Match the home page header's full width, height, and outer spacing. */
.header{width:100%;height:112px;min-height:112px;padding:10px clamp(18px,4vw,56px);flex-wrap:nowrap}
@media(max-width:680px){
 .header{height:96px;min-height:96px;gap:12px}
}
@media(max-width:650px){
 .header img{width:clamp(80px,25vw,110px);max-height:65px}
 .header nav{width:auto;display:grid;grid-template-columns:repeat(3,auto);gap:5px 10px;padding:0;align-items:center}
 .header nav .button{grid-column:1 / -1;justify-self:end}
 html{scroll-padding-top:116px}
}
/* Align the help text with Givebutter's 440px form width. */
.giving-form{width:100%;max-width:440px;justify-self:center}
.giving-form>p{width:100%;margin-left:auto;margin-right:auto;text-align:center}

/* Dimensional gold baubles with a festive ribbon detail. */
.ribbon-ornament{width:30px;height:36px;filter:drop-shadow(0 2px 2px #52110f35)}
@media(max-width:650px){.ribbon-ornament{width:26px;height:32px}}
