*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f1df;color:#153d28;font-family:Arial,Helvetica,sans-serif}a{color:inherit}.site-frame{width:100%;min-height:100vh;overflow-x:hidden}.home-stage{position:relative;width:100vw;max-width:none;aspect-ratio:3/2;margin:0;background:#fffaf0;overflow:hidden;container-type:inline-size}.home-design{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:1}.owner-home-photo{display:none;position:absolute;z-index:2;left:28%;top:7%;width:39%;height:31%;object-fit:cover;border-radius:16px}.hotspot{position:absolute;z-index:10;border-radius:10px}.hotspot:hover,.hotspot:focus{background:#ffd94f33;outline:3px solid #fff;box-shadow:0 0 0 6px #b71922}.live-panel{position:absolute;z-index:8;background:#fffaf0;text-align:center;line-height:1.15}.dates{left:9.4%;top:44.5%;width:15.2%;height:11.9%;display:flex;flex-direction:column;justify-content:center;gap:.5vw}.dates strong{font-family:Georgia,serif;color:#174f2c;font-size:clamp(10px,1.15vw,20px)}.dates span{font-weight:700;font-size:clamp(9px,1.05vw,18px)}.dates b{color:#c21d24}.countdown{left:82.2%;top:8.2%;width:14.8%;height:17%;display:flex;flex-direction:column;justify-content:center}.countdown strong{font:700 clamp(10px,1.1vw,18px) Georgia;color:#174f2c}.countdown .num{font:700 clamp(28px,4.2vw,72px) Georgia;color:#b91d24;line-height:.9}.countdown .unit{font:700 clamp(15px,1.8vw,30px) Georgia}.countdown em{font:italic clamp(9px,1.05vw,18px) Georgia;color:#a15b13}.fund-overlay{position:absolute;z-index:9;left:81.2%;top:55.5%;width:11.5%;text-align:center}.fund-overlay .year{font-weight:700}.fund-overlay .goal{font:700 clamp(14px,1.7vw,28px) Georgia;color:#b91d24}.fund-overlay .raised{margin-top:8.7vw;font-weight:700}.fund-progress{position:absolute;z-index:8;left:79.85%;top:62.6%;width:3.25%;height:18.5%;border-radius:999px;overflow:hidden}.fund-progress span{position:absolute;bottom:0;left:0;right:0;background:#c91717cc}.nav-home{left:27.5%;top:1.3%;width:7%;height:4.5%}.nav-visit{left:35%;top:1.3%;width:11%;height:4.5%}.nav-tune{left:46.5%;top:1.3%;width:6.7%;height:4.5%}.nav-story{left:53%;top:1.3%;width:7.8%;height:4.5%}.nav-setup{left:60.7%;top:1.3%;width:6%;height:4.5%}.nav-santa{left:66.7%;top:1.3%;width:8.5%;height:4.5%}.nav-thanks{left:75%;top:1.3%;width:7.8%;height:4.5%}.nav-contact{left:82.4%;top:1.3%;width:9.5%;height:4.5%}.choose{left:4.6%;top:57.2%;width:22%;height:6.4%}.listen{left:4.6%;top:63.8%;width:22%;height:6.1%}.directions{left:4.6%;top:70.3%;width:22%;height:6.1%}.facebook{left:4.4%;top:78%;width:23.4%;height:8.4%}.story-btn{left:60.7%;top:63.5%;width:14.7%;height:4.8%}.donate{left:78.5%;top:84.2%;width:15.1%;height:5.5%}.santa-btn{left:44.1%;top:89%;width:14.6%;height:4.2%}.page-header{background:#fffaf0;border-bottom:1px solid #d6bd87;position:sticky;top:0;z-index:20}.nav{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:14px 20px}.brand{font:700 28px Georgia;color:#b91d24;text-decoration:none}.nav-links{display:flex;gap:20px;font-weight:700}.nav-links a{text-decoration:none}.page-hero{min-height:390px;background-size:cover;background-position:center;display:grid;place-items:center;text-align:center;color:#fff;position:relative;border-bottom:7px solid #d0a24a}.page-hero:before{content:"";position:absolute;inset:0;background:#071b22a8}.page-hero>div{position:relative;max-width:850px;padding:35px}.page-hero h1{font:700 clamp(42px,7vw,82px) Georgia;margin:0;text-shadow:0 3px 15px #000}.page-hero p{font-size:20px}.christmas-frame:after{content:"✦  ❄  ✦  ❄  ✦";position:absolute;bottom:10px;color:#fff3c9;font-size:24px;letter-spacing:16px}.content{max-width:1100px;margin:auto;padding:55px 22px}.content h2{font:700 40px Georgia;color:#b91d24}.paper{background:#fffaf0;border:1px solid #d7be89;border-radius:20px;padding:28px;box-shadow:0 12px 35px #5b41151c}.story-copy{font-size:20px;line-height:1.8;margin-bottom:30px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.gallery-gap{margin-top:35px}.photo{width:100%;border-radius:16px;display:block}.calendar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.calendar-card{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid #d6bd87;border-radius:18px;padding:18px;box-shadow:0 8px 24px #392a1017}.calendar-date{min-width:78px;text-align:center;border-radius:12px;overflow:hidden;border:1px solid #b91d24}.calendar-date b{display:block;background:#b91d24;color:#fff;padding:6px}.calendar-date strong{display:block;font:700 40px Georgia;padding:8px}.placeholder{min-height:250px;border:2px dashed #c69d51;border-radius:18px;display:grid;place-items:center;background:#fffaf0;text-align:center;padding:25px}.admin-body{background:linear-gradient(135deg,#fffaf0,#efe0bd);min-height:100vh}.admin-top{background:#0e4327;color:#fff;padding:16px 24px;display:flex;justify-content:space-between;gap:20px;align-items:center}.admin-top nav{display:flex;gap:16px}.admin-wrap{max-width:1000px;margin:30px auto;padding:20px}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#fffaf0;border:1px solid #d6bd87;border-radius:18px;padding:24px}.admin-form.single{grid-template-columns:1fr}.admin-form h2{margin:18px 0 0;color:#b91d24;font-family:Georgia,serif}.admin-form label,.login label{display:flex;flex-direction:column;gap:7px;font-weight:700}.admin-form input,.admin-form textarea,.login input{padding:12px;border:1px solid #bda77a;border-radius:8px;font:inherit;width:100%}.admin-form textarea{min-height:150px}.admin-form small{font-weight:400;color:#5e665f;overflow-wrap:anywhere}.full{grid-column:1/-1}.btn{display:inline-block;border:0;border-radius:10px;background:#176b32;color:#fff;padding:13px 18px;font-weight:800;text-decoration:none;cursor:pointer}.btn.secondary{background:#b91d24}.full-width{width:100%;margin-top:14px}.login,.install-card{max-width:500px;margin:70px auto;background:#fffaf0;padding:30px;border-radius:20px;border:1px solid #d6bd87;box-shadow:0 18px 45px #3b2b111c}.login form{display:grid;gap:15px}.install-card{max-width:620px}.notice{padding:14px 16px;border-radius:10px;margin:15px 0}.notice.success{background:#e1f6e6;color:#15582a;border:1px solid #89c797}.notice.error{background:#ffe7e7;color:#8b161b;border:1px solid #df9497}.small{font-size:14px}.password-panel{margin-top:30px}.mobile-home{display:none}.quick{padding:22px;display:grid;gap:12px}.quick a{padding:16px;border-radius:12px;text-align:center;background:#176b32;color:#fff;text-decoration:none;font-weight:800}.quick a:nth-child(2){background:#06488f}.quick a:nth-child(3),.quick a:nth-child(4){background:#b91d24}@media(max-width:900px){.nav-links{display:none}.calendar-grid,.grid,.admin-form{grid-template-columns:1fr}.home-stage{display:none}.mobile-home{display:block}.mobile-hero{min-height:62vh;background-position:center;background-size:cover;position:relative;display:grid;place-items:center;text-align:center;color:#fff;padding:30px}.mobile-hero:before{content:"";position:absolute;inset:0;background:#071a22a0}.mobile-hero>div{position:relative}.mobile-hero h1{font:700 48px Georgia;margin:0}.admin-top{align-items:flex-start;flex-direction:column}.full{grid-column:1}.content h2{font-size:34px}}@media(min-width:901px){body.home-owner-photo .owner-home-photo{display:block}}
/* Fluid desktop scaling: the approved 3:2 homepage now grows and shrinks with the browser.
   Container units keep the live dates, countdown, and donation overlays aligned with the artwork. */
@media(min-width:901px){
  .dates{gap:.5cqw}
  .dates strong{font-size:1.15cqw}
  .dates span{font-size:1.05cqw}
  .countdown strong{font-size:1.1cqw}
  .countdown .num{font-size:4.2cqw}
  .countdown .unit{font-size:1.8cqw}
  .countdown em{font-size:1.05cqw}
  .fund-overlay .goal{font-size:1.7cqw}
  .fund-overlay .raised{margin-top:8.7cqw}
}

/* Fix baked-in fundraiser text in the approved artwork.
   This opaque panel covers the old 2024 goal and duplicate dollar amount,
   then displays only the live database values. */
.fund-overlay{
  left:78.7%;
  top:53.7%;
  width:16.2%;
  min-height:10.7%;
  padding:.7cqw .45cqw .35cqw;
  background:#fffaf0;
  border-radius:.45cqw;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  line-height:1.05;
}
.fund-overlay .year{
  font:700 1.25cqw Arial,Helvetica,sans-serif;
  color:#174f2c;
  white-space:nowrap;
}
.fund-overlay .goal{
  margin-top:.22cqw;
  font:700 2.25cqw Georgia,serif;
  color:#b91d24;
  white-space:nowrap;
}
.fund-overlay .raised{
  position:absolute;
  top:20.3cqw;
  left:0;
  width:100%;
  margin:0;
  background:#fffaf0;
  padding:.2cqw;
  font-size:1.05cqw;
  line-height:1.15;
}


/* Candy-cane trim around the four approved homepage panels. */
@media(min-width:901px){
  .candy-frame{
    position:absolute;
    z-index:7;
    pointer-events:none;
    border:.48cqw solid transparent;
    border-radius:1.05cqw;
    background:
      linear-gradient(transparent,transparent) padding-box,
      repeating-linear-gradient(135deg,
        #c71922 0 .52cqw,
        #fffdf5 .52cqw 1.04cqw) border-box;
    box-shadow:0 0 .35cqw rgba(117,22,22,.24), inset 0 0 .18cqw rgba(117,22,22,.18);
  }
  .candy-visit{left:3.55%;top:39.25%;width:24.65%;height:37.55%}
  .candy-welcome{left:28.45%;top:39.25%;width:30.35%;height:25.15%}
  .candy-story{left:58.95%;top:39.25%;width:17.15%;height:43.35%}
  .candy-support{left:76.35%;top:39.25%;width:19.45%;height:51.55%}
}

/* Clean fundraiser mask: fully hide the old 2024 goal and duplicate $5,000
   baked into the artwork, then show only database-controlled values. */
@media(min-width:901px){
  .fund-overlay{
    left:78.15%;
    top:53.25%;
    width:16.8%;
    min-height:11.8%;
    padding:.78cqw .45cqw .45cqw;
    background:#fffaf0;
    border-radius:.5cqw;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    line-height:1.04;
    box-shadow:none;
  }
  .fund-overlay .year{
    font:700 1.26cqw Arial,Helvetica,sans-serif;
    color:#174f2c;
    white-space:nowrap;
  }
  .fund-overlay .goal{
    margin-top:.18cqw;
    font:700 2.25cqw Georgia,serif;
    color:#b91d24;
    white-space:nowrap;
  }
  .fund-overlay .raised{
    position:absolute;
    top:20.45cqw;
    left:-.15cqw;
    width:17.1cqw;
    margin:0;
    padding:.22cqw .1cqw;
    background:#fffaf0;
    font-size:1.05cqw;
    line-height:1.12;
    text-align:center;
  }
}

/* v3.1 correction: render candy-cane trim as a transparent ring only.
   The center remains fully transparent so the original cream panels and text stay visible. */
@media(min-width:901px){
  .candy-frame{
    padding:.46cqw;
    border:0;
    background:repeating-linear-gradient(135deg,
      #c71922 0 .48cqw,
      #fffdf5 .48cqw .96cqw);
    -webkit-mask:
      linear-gradient(#000 0 0) content-box,
      linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    box-shadow:none;
    filter:drop-shadow(0 .14cqw .18cqw rgba(117,22,22,.25));
  }
}

/* v3.2 layering correction for the installed GoDaddy package.
   Duplicate clipped copies of the approved artwork restore the snowman and elf
   above the candy-cane ring, making the trim appear behind the characters. */
@media(min-width:901px){
  .character-restore{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:fill;
    z-index:8;
    pointer-events:none;
  }
  .restore-snowman{clip-path:inset(40% 88% 35% 0)}
  .restore-elf{clip-path:inset(40% 0 29% 91%)}

  /* Keep the live goal entirely to the right of the thermometer. */
  .fund-overlay{
    left:83.35%;
    top:54.2%;
    width:9.4%;
    min-height:9.3%;
    padding:.5cqw .18cqw .25cqw;
    background:#fffaf0;
    border-radius:.35cqw;
    z-index:9;
  }
  .fund-overlay .year{
    font-size:1.05cqw;
    line-height:1.05;
  }
  .fund-overlay .goal{
    margin-top:.12cqw;
    font-size:1.82cqw;
    line-height:1;
  }
  .fund-overlay .raised{
    position:absolute;
    top:19.15cqw;
    left:-.15cqw;
    width:9.7cqw;
    margin:0;
    padding:.2cqw .08cqw;
    background:#fffaf0;
    font-size:.96cqw;
    line-height:1.1;
    text-align:center;
  }
}

/* v3.3 fundraiser alignment correction.
   Keep the editable goal below the baked-in help sentence and keep the
   raised amount safely above the Donate Now button. */
@media(min-width:901px){
  .fund-overlay{
    left:81.55%;
    top:57.05%;
    width:11.15%;
    min-height:9.1%;
    padding:.42cqw .2cqw .25cqw;
    background:#fffaf0;
    border-radius:.35cqw;
    z-index:9;
  }
  .fund-overlay .year{
    font-size:1.05cqw;
    line-height:1.05;
  }
  .fund-overlay .goal{
    margin-top:.12cqw;
    font-size:1.82cqw;
    line-height:1;
  }
  .fund-overlay .raised{
    position:absolute;
    top:12.35cqw;
    left:.65cqw;
    width:9.85cqw;
    margin:0;
    padding:.25cqw .1cqw;
    background:#fffaf0;
    border-radius:.28cqw;
    font-size:.96cqw;
    line-height:1.12;
    text-align:center;
  }
}

/* v3.4 active thermometer correction.
   Removes the floating live goal/raised text blocks from the fundraiser panel.
   The owner dashboard values now drive the thermometer fill only, which prevents
   the 2025 goal and raised amount from overlapping the baked-in artwork. */
@media(min-width:901px){
  /* Cream mask only: covers old baked-in 2024 goal / duplicate dollar text. */
  .fund-overlay{
    left:78.15%;
    top:53.05%;
    width:16.95%;
    height:11.7%;
    min-height:0;
    padding:0;
    margin:0;
    background:#fffaf0;
    border-radius:.35cqw;
    box-shadow:none;
    z-index:8;
    overflow:hidden;
    pointer-events:none;
  }
  .fund-overlay .year,
  .fund-overlay .goal,
  .fund-overlay .raised{
    display:none !important;
  }

  /* Active red fill. Percent is still controlled by PHP from owner dashboard. */
  .fund-progress{
    left:79.82%;
    top:62.45%;
    width:3.32%;
    height:18.2%;
    border-radius:999px;
    overflow:hidden;
    z-index:9;
    pointer-events:none;
    background:transparent;
  }
  .fund-progress span{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    border-radius:999px 999px 0 0;
    background:linear-gradient(90deg,
      rgba(150,0,0,.82) 0%,
      rgba(230,14,14,.92) 42%,
      rgba(255,70,58,.78) 70%,
      rgba(150,0,0,.82) 100%);
    box-shadow:inset .18cqw 0 .22cqw rgba(255,255,255,.35), inset -.18cqw 0 .22cqw rgba(80,0,0,.24);
  }
}

/* v3.5 fundraiser mask correction.
   Keep the dashboard-controlled thermometer active, but move the cream text-mask
   off the thermometer tube so the artwork remains visible. */
@media(min-width:901px){
  .fund-overlay{
    left:83.35%;
    top:55.65%;
    width:10.8%;
    height:8.55%;
    min-height:0;
    padding:0;
    margin:0;
    background:#fffaf0;
    border-radius:.28cqw;
    box-shadow:none;
    z-index:8;
    overflow:hidden;
    pointer-events:none;
  }
  .fund-overlay .year,
  .fund-overlay .goal,
  .fund-overlay .raised{
    display:none !important;
  }
  .fund-progress{
    left:79.82%;
    top:62.45%;
    width:3.32%;
    height:18.2%;
    z-index:10;
  }
}


/* v3.6 fundraiser cleanup.
   The old baked-in goal text is now removed from homepage-design.png, so the
   temporary cream-colored overlay is no longer needed. Hide it completely and
   keep only the active thermometer fill. */
@media(min-width:901px){
  .fund-overlay{display:none !important;background:transparent !important;box-shadow:none !important;}
  .fund-progress{
    left:79.82%;
    top:62.45%;
    width:3.32%;
    height:18.2%;
    z-index:10;
    pointer-events:none;
    background:transparent;
  }
}

/* v3.7 final fundraiser cleanup.
   Remove every leftover cream overlay from the live layer. The fundraiser text was
   cleaned directly in homepage-design.png, so the only active element remaining
   is the thermometer fill controlled by the owner dashboard. */
@media(min-width:901px){
  .fund-overlay,
  .fund-overlay *,
  .fund-overlay::before,
  .fund-overlay::after{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    width:0 !important;
    height:0 !important;
    min-width:0 !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:hidden !important;
    pointer-events:none !important;
  }
  .fund-progress{
    left:79.82%;
    top:62.45%;
    width:3.32%;
    height:18.2%;
    z-index:10;
    pointer-events:none;
    background:transparent !important;
  }
}

/* v3.8 rebuilt support / donation area.
   Replaces the fundraiser overlay patching with a clean rebuilt card inside
   the original support panel, while keeping the elf above the panel border. */
@media(min-width:901px){
  .fund-overlay,.fund-progress{display:none !important}
  .candy-frame{z-index:6}
  .character-restore{z-index:9}
  .support-card-rebuild{
    position:absolute;
    left:77.1%;
    top:40.15%;
    width:17.45%;
    height:49.55%;
    z-index:8;
    background:#fffaf0;
    border-radius:1.05cqw;
    padding:1.25cqw .9cqw .85cqw;
    text-align:center;
    color:#153d28;
    box-shadow:0 .18cqw .4cqw rgba(66,43,11,.08);
  }
  .support-card-rebuild h3{
    margin:0 0 .45cqw;
    font:700 1.72cqw Georgia,serif;
    color:#b91d24;
    line-height:1;
  }
  .support-card-rebuild .benefiting{
    font:700 1.05cqw Arial,Helvetica,sans-serif;
    color:#1f1f1f;
    margin-bottom:.42cqw;
  }
  .support-card-rebuild .maw-logo{color:#1e4ea8;line-height:.94;margin-bottom:.85cqw}
  .support-card-rebuild .maw-logo .line1{display:block;font:400 3.15cqw Georgia,serif;letter-spacing:-.03cqw}
  .support-card-rebuild .maw-logo .line2{display:block;font:700 .86cqw Arial,Helvetica,sans-serif;letter-spacing:.08cqw;margin-top:.18cqw}
  .support-card-rebuild .help-text{
    margin:.15cqw 0 .85cqw;
    font:700 1.05cqw Arial,Helvetica,sans-serif;
    color:#1d1d1d;
    line-height:1.15;
  }
  .support-card-rebuild .support-meta{margin-bottom:.45cqw}
  .support-card-rebuild .fund-year{display:block;font:700 1.2cqw Arial,Helvetica,sans-serif;color:#174f2c;line-height:1.05}
  .support-card-rebuild .fund-goal{display:block;margin-top:.12cqw;font:700 2.35cqw Georgia,serif;color:#b91d24;line-height:1}
  .support-card-rebuild .support-thermo{
    position:absolute;
    left:1.15cqw;
    top:17.25cqw;
    width:2.95cqw;
    height:10.5cqw;
  }
  .support-card-rebuild .tube{
    position:absolute;
    left:.92cqw;
    top:0;
    width:1.15cqw;
    height:7.55cqw;
    border:.14cqw solid #c99538;
    border-radius:.9cqw;
    background:linear-gradient(90deg,#fff3dc 0%,#fffdf8 50%,#f6e1bb 100%);
    overflow:hidden;
    box-shadow:inset .1cqw 0 .08cqw rgba(255,255,255,.55), inset -.09cqw 0 .08cqw rgba(137,93,28,.18);
  }
  .support-card-rebuild .tube .fill{
    position:absolute;left:0;right:0;bottom:0;
    background:linear-gradient(90deg,#8f0808 0%,#db1717 55%,#ff4d46 100%);
    border-radius:.65cqw .65cqw 0 0;
  }
  .support-card-rebuild .bulb{
    position:absolute;
    left:0;
    bottom:0;
    width:2.95cqw;
    height:2.95cqw;
    border:.14cqw solid #c99538;
    border-radius:50%;
    background:linear-gradient(180deg,#fff3dc 0%,#fffdf8 45%,#f6e1bb 100%);
    box-shadow:inset .08cqw .12cqw .16cqw rgba(255,255,255,.72), inset -.1cqw -.15cqw .16cqw rgba(137,93,28,.18);
  }
  .support-card-rebuild .bulb .fill-bulb{
    position:absolute;
    inset:.32cqw;
    border-radius:50%;
    background:radial-gradient(circle at 35% 32%,#ff6d61 0%,#e51a1a 45%,#930303 100%);
  }
  .support-card-rebuild .support-scale{
    position:absolute;
    left:5.1cqw;
    top:18cqw;
    width:8.75cqw;
    text-align:left;
    color:#174f2c;
  }
  .support-card-rebuild .support-scale strong{font:700 1.6cqw Arial,Helvetica,sans-serif;color:#174f2c}
  .support-card-rebuild .goal-label,
  .support-card-rebuild .raised-label{
    display:block;
    position:relative;
    font:700 1.1cqw Arial,Helvetica,sans-serif;
    line-height:1.05;
  }
  .support-card-rebuild .goal-label{margin-bottom:3.35cqw}
  .support-card-rebuild .goal-label::before,
  .support-card-rebuild .raised-label::before{
    content:"";
    position:absolute;
    left:-2.55cqw;
    top:.85cqw;
    width:2.05cqw;
    border-top:.14cqw solid #7d8c8a;
  }
}


/* v3.9 Support Our Cause rebuild final.
   The old baked-in support card remains inside the background image, so this
   rebuilt card now completely covers that area and draws its own single card.
   The separate candy-support ring is hidden to prevent a second box/border. */
@media(min-width:901px){
  .candy-support{display:none !important;}
  .support-card-rebuild{
    left:76.25% !important;
    top:39.05% !important;
    width:19.65% !important;
    height:51.85% !important;
    z-index:8 !important;
    padding:1.38cqw 1.05cqw .95cqw !important;
    background:
      linear-gradient(#fffaf0,#fffaf0) padding-box,
      repeating-linear-gradient(135deg,
        #c71922 0 .48cqw,
        #fffdf5 .48cqw .96cqw) border-box !important;
    border:.48cqw solid transparent !important;
    border-radius:1.05cqw !important;
    box-shadow:0 .18cqw .55cqw rgba(66,43,11,.16) !important;
    overflow:hidden !important;
  }
  .support-card-rebuild h3{
    margin:0 0 .45cqw !important;
    font-size:1.58cqw !important;
    line-height:1 !important;
  }
  .support-card-rebuild .benefiting{
    font-size:1.0cqw !important;
    margin-bottom:.35cqw !important;
  }
  .support-card-rebuild .maw-logo{
    margin-bottom:.58cqw !important;
  }
  .support-card-rebuild .maw-logo .line1{
    font-size:2.55cqw !important;
    letter-spacing:-.03cqw !important;
  }
  .support-card-rebuild .maw-logo .line2{
    font-size:.72cqw !important;
    letter-spacing:.08cqw !important;
  }
  .support-card-rebuild .help-text{
    margin:.05cqw 0 .55cqw !important;
    font-size:.95cqw !important;
    line-height:1.12 !important;
  }
  .support-card-rebuild .support-meta{
    margin-bottom:.2cqw !important;
  }
  .support-card-rebuild .fund-year{
    font-size:1.05cqw !important;
  }
  .support-card-rebuild .fund-goal{
    font-size:1.92cqw !important;
    margin-top:.05cqw !important;
  }
  .support-card-rebuild .support-thermo{
    left:1.55cqw !important;
    top:18.55cqw !important;
    width:3.0cqw !important;
    height:10.45cqw !important;
  }
  .support-card-rebuild .support-scale{
    left:5.35cqw !important;
    top:19.25cqw !important;
    width:8.8cqw !important;
  }
  .support-card-rebuild .support-scale strong{
    font-size:1.38cqw !important;
  }
  .support-card-rebuild .goal-label,
  .support-card-rebuild .raised-label{
    font-size:.96cqw !important;
  }
  .support-card-rebuild .goal-label{margin-bottom:3.05cqw !important;}
  .support-donate-button{
    position:absolute;
    left:2.9cqw;
    right:2.9cqw;
    bottom:1.15cqw;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.35cqw;
    height:2.9cqw;
    border-radius:.45cqw;
    background:linear-gradient(#d12a28,#a90812);
    color:#fff;
    text-decoration:none;
    font:800 1.1cqw Arial,Helvetica,sans-serif;
    letter-spacing:.02cqw;
    box-shadow:inset 0 .12cqw .12cqw rgba(255,255,255,.22),0 .12cqw .3cqw rgba(80,0,0,.22);
    z-index:11;
  }
  .support-donate-button span{font-size:1.1cqw;color:#fff;}
}

/* v3.10 single support-card fix.
   Remove the rebuilt Support Our Cause overlay completely so the homepage has
   only ONE support card: the clean baked-in card in homepage-design.png.
   The thermometer tube is still active and reflects the database donation percentage. */
@media(min-width:901px){
  .support-card-rebuild{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
  .fund-overlay{
    display:none !important;
    visibility:hidden !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .fund-progress{
    display:block !important;
    position:absolute !important;
    z-index:8 !important;
    left:80.02% !important;
    top:62.55% !important;
    width:2.05% !important;
    height:12.25% !important;
    border-radius:999px !important;
    overflow:hidden !important;
    background:transparent !important;
    pointer-events:none !important;
  }
  .fund-progress span{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    background:linear-gradient(90deg,#a40606 0%,#e31717 55%,#ff5a52 100%) !important;
    border-radius:999px 999px 0 0 !important;
  }
  .candy-support{
    display:block !important;
    z-index:6 !important;
    pointer-events:none !important;
  }
  .character-restore{
    z-index:9 !important;
    pointer-events:none !important;
  }
  .restore-elf{
    clip-path:inset(40% 0 29% 92.2%) !important;
  }
}


/* v3.12 fundraiser reset.
   IMPORTANT: This returns the fundraiser area to ONE support card only.
   The support card is the artwork in homepage-design.png; we only overlay
   the live thermometer fill and live goal/raised labels. */
@media(min-width:901px){
  .support-card-live,
  .support-card-rebuild,
  .fund-overlay{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  .fund-live-labels{
    position:absolute !important;
    z-index:11 !important;
    left:84.25% !important;
    top:64.75% !important;
    width:9.4% !important;
    color:#174f2c !important;
    text-align:left !important;
    pointer-events:none !important;
  }
  .fund-live-labels span{
    display:block !important;
    position:relative !important;
    font:700 1.04cqw Arial,Helvetica,sans-serif !important;
    line-height:1.08 !important;
    padding:.10cqw .12cqw .10cqw .28cqw !important;
    background:#fffaf0 !important;
    border-radius:.20cqw !important;
  }
  .fund-live-labels strong{
    display:block !important;
    color:#174f2c !important;
    font:800 1.30cqw Arial,Helvetica,sans-serif !important;
    line-height:1 !important;
  }
  .fund-live-labels em{
    display:block !important;
    color:#151515 !important;
    font-style:normal !important;
    font-weight:700 !important;
    font-size:.92cqw !important;
  }
  .fund-live-labels .goal-label{
    margin-bottom:5.45cqw !important;
  }
  .fund-live-labels .goal-label::before,
  .fund-live-labels .raised-label::before{
    content:"" !important;
    position:absolute !important;
    left:-2.22cqw !important;
    top:.78cqw !important;
    width:1.9cqw !important;
    border-top:.13cqw solid #7d8c8a !important;
  }

  .fund-progress{
    display:block !important;
    position:absolute !important;
    z-index:10 !important;
    left:81.70% !important;
    top:60.95% !important;
    width:1.10% !important;
    height:16.25% !important;
    border-radius:999px 999px .18cqw .18cqw !important;
    overflow:hidden !important;
    background:transparent !important;
    pointer-events:none !important;
  }
  .fund-progress span{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    background:linear-gradient(90deg,#9b0303 0%,#d91616 52%,#ff655e 100%) !important;
    border-radius:999px 999px .18cqw .18cqw !important;
    min-height:0 !important;
  }

  /* Keep the candy trim behind characters; no extra support-card overlay. */
  .candy-support{
    display:block !important;
    z-index:7 !important;
    pointer-events:none !important;
  }
  .character-restore{
    z-index:12 !important;
    pointer-events:none !important;
  }
  .restore-snowman{clip-path:inset(40% 88% 35% 0) !important;}
  .restore-elf{clip-path:inset(40% 0 29% 92.2%) !important;}
}

/* v3.13 final fundraiser rebuild.
   The old support artwork has been removed from homepage-design.png.
   This is now the ONLY fundraiser card on the desktop homepage. */
@media(min-width:901px){
  .fund-overlay,
  .fund-live-labels,
  .fund-progress,
  .support-card-rebuild,
  .candy-support,
  .restore-elf{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .support-card-live{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:absolute !important;
    z-index:13 !important;
    left:76.35% !important;
    top:39.15% !important;
    width:20.25% !important;
    height:51.75% !important;
    padding:1.00cqw .95cqw .85cqw !important;
    border:.34cqw solid transparent !important;
    border-radius:1.18cqw !important;
    background:
      linear-gradient(180deg,#fffaf1 0%,#fff3de 100%) padding-box,
      repeating-linear-gradient(45deg,#c71922 0 .34cqw,#fff .34cqw .68cqw) border-box !important;
    box-shadow:0 .35cqw .95cqw rgba(92,54,8,.20) !important;
    text-align:center !important;
    color:#141414 !important;
    font-family:Arial,Helvetica,sans-serif !important;
    overflow:hidden !important;
    pointer-events:auto !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
  }

  .support-card-live h3{
    margin:0 0 .34cqw !important;
    color:#b71922 !important;
    font:700 1.56cqw Georgia,serif !important;
    letter-spacing:.02cqw !important;
    line-height:1.02 !important;
    text-transform:uppercase !important;
  }
  .support-card-live h3::before,
  .support-card-live h3::after{
    content:"❧" !important;
    color:#0c652c !important;
    font-size:1.0cqw !important;
    margin:0 .30cqw !important;
  }
  .support-card-live .benefiting{
    font:700 .82cqw Arial,Helvetica,sans-serif !important;
    margin-bottom:.20cqw !important;
  }
  .support-card-live .maw-logo{
    color:#1f4ea8 !important;
    line-height:.92 !important;
    margin-bottom:.52cqw !important;
  }
  .support-card-live .maw-main{
    display:block !important;
    font:400 2.70cqw Georgia,serif !important;
    letter-spacing:-.08cqw !important;
    white-space:nowrap !important;
  }
  .support-card-live .maw-sub{
    display:block !important;
    font:800 .72cqw Arial,Helvetica,sans-serif !important;
    letter-spacing:.08cqw !important;
    margin-top:.14cqw !important;
  }
  .support-card-live .help-text{
    margin:0 0 .48cqw !important;
    font:700 .86cqw Arial,Helvetica,sans-serif !important;
    line-height:1.14 !important;
  }
  .support-card-live .support-meta{
    margin:0 0 .34cqw !important;
    line-height:1 !important;
  }
  .support-card-live .fund-year{
    display:block !important;
    color:#174f2c !important;
    font:800 1.08cqw Arial,Helvetica,sans-serif !important;
  }
  .support-card-live .fund-goal{
    display:block !important;
    margin-top:.16cqw !important;
    color:#b71922 !important;
    font:700 1.75cqw Georgia,serif !important;
  }

  .support-card-live .thermo-row{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:.78cqw !important;
    width:100% !important;
    min-height:13.2cqw !important;
    margin:.06cqw 0 .44cqw !important;
  }
  .support-card-live .thermo-live{
    position:relative !important;
    width:4.7cqw !important;
    height:12.9cqw !important;
    flex:0 0 4.7cqw !important;
  }
  .support-card-live .tube{
    position:absolute !important;
    left:50% !important;
    top:.18cqw !important;
    transform:translateX(-50%) !important;
    width:1.42cqw !important;
    height:9.65cqw !important;
    border:.18cqw solid #d39b26 !important;
    border-bottom:none !important;
    border-radius:.78cqw .78cqw .18cqw .18cqw !important;
    background:#fffdf8 !important;
    overflow:hidden !important;
    box-shadow:inset .12cqw 0 .22cqw rgba(0,0,0,.11), 0 0 0 .08cqw #fff8e8 !important;
  }
  .support-card-live .tube::after{
    content:"" !important;
    position:absolute !important;
    inset:.18cqw .16cqw auto auto !important;
    width:.24cqw !important;
    height:8.7cqw !important;
    background:linear-gradient(90deg,rgba(255,255,255,.8),rgba(255,255,255,0)) !important;
    border-radius:.25cqw !important;
    z-index:3 !important;
  }
  .support-card-live .tube .fill{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    min-height:0 !important;
    background:linear-gradient(90deg,#960303 0%,#d7191c 58%,#ff6760 100%) !important;
    border-radius:.55cqw .55cqw 0 0 !important;
    transition:height .35s ease !important;
    z-index:2 !important;
  }
  .support-card-live .bulb{
    position:absolute !important;
    left:50% !important;
    bottom:0 !important;
    transform:translateX(-50%) !important;
    width:3.65cqw !important;
    height:3.65cqw !important;
    border:.18cqw solid #d39b26 !important;
    border-radius:50% !important;
    background:#fffdf8 !important;
    box-shadow:0 .12cqw .22cqw rgba(0,0,0,.15), inset .13cqw .12cqw .30cqw rgba(0,0,0,.10) !important;
  }
  .support-card-live .bulb span{
    position:absolute !important;
    inset:.36cqw !important;
    border-radius:50% !important;
    background:radial-gradient(circle at 28% 25%,#ffb1a6 0 .34cqw,#ec332a .35cqw 1.0cqw,#bb0606 70%) !important;
  }
  .support-card-live .fund-labels{
    display:flex !important;
    flex-direction:column !important;
    gap:3.65cqw !important;
    text-align:left !important;
    flex:0 0 5.7cqw !important;
    padding-top:1.0cqw !important;
  }
  .support-card-live .fund-labels span{
    position:relative !important;
    display:block !important;
    background:transparent !important;
    padding:0 !important;
    color:#141414 !important;
    line-height:1.02 !important;
  }
  .support-card-live .fund-labels span::before{
    content:"" !important;
    position:absolute !important;
    left:-1.75cqw !important;
    top:.52cqw !important;
    width:1.38cqw !important;
    border-top:.12cqw solid #74827f !important;
  }
  .support-card-live .fund-labels strong{
    display:block !important;
    color:#174f2c !important;
    font:800 1.04cqw Arial,Helvetica,sans-serif !important;
    line-height:1 !important;
  }
  .support-card-live .fund-labels em{
    display:block !important;
    font-style:normal !important;
    color:#111 !important;
    font:700 .82cqw Arial,Helvetica,sans-serif !important;
  }
  .support-donate-live{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:.42cqw !important;
    width:82% !important;
    min-height:3.05cqw !important;
    margin-top:auto !important;
    color:#fff !important;
    text-decoration:none !important;
    background:linear-gradient(180deg,#d32022,#a80509) !important;
    border:.10cqw solid #8d0508 !important;
    border-radius:.42cqw !important;
    box-shadow:inset 0 .10cqw 0 rgba(255,255,255,.22),0 .15cqw .28cqw rgba(0,0,0,.18) !important;
    font:900 1.04cqw Arial,Helvetica,sans-serif !important;
    letter-spacing:.02cqw !important;
    z-index:14 !important;
  }
  .support-donate-live span{font-size:1.05cqw !important;color:#fff !important;}

  /* keep existing clickable hotspot from sitting over the rebuilt button */
  .donate{display:none !important;}
}
@media(max-width:900px){.support-card-live{display:none !important;}}


/* v3.14 safe donation-panel reset.
   Critical styles are also in index.php so this panel will render even if CSS is cached. */
@media(min-width:901px){
  .support-card-live,.support-card-rebuild,.fund-overlay,.fund-live-labels,.fund-progress,.candy-support,.restore-elf{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
  .support-panel-v314{display:flex!important;visibility:visible!important;opacity:1!important;}
}
@media(max-width:900px){.support-panel-v314{display:none!important;}}
