:root{
--red:#8B1E24;
--deep-red:#651419;
--green:#1F5B3A;
--gold:#E7C15A;
--gold2:#B8862B;
--navy:#8B1E24;
--navy2:#651419;
--cream:#F7F2E8;
--paper:#fffdf8;
--text:#0f2140;--muted:#536982;--shadow:0 24px 70px rgba(2,10,28,.23);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Lato,Arial,sans-serif;background:var(--cream);color:var(--text);font-size:18px;line-height:1.65;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}.container{width:min(1120px,92vw);margin-inline:auto}#snow{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.55}.nav{position:sticky;top:0;z-index:50;background:linear-gradient(90deg,#651419,#8B1E24);backdrop-filter:blur(12px);box-shadow:0 6px 24px rgba(0,0,0,.28)}.nav-inner{display:flex;justify-content:space-between;align-items:center;padding:.74rem 0}.logo{font-family:'Playfair Display',Georgia,serif;font-weight:900;font-size:1.35rem;color:var(--gold);text-decoration:none}.links{display:flex;gap:1rem;align-items:center}.links a{color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;font-weight:900;font-size:.82rem}.nav-book{background:var(--red);border-radius:999px;padding:.68rem 1.05rem}.menu-toggle{display:none;background:transparent;color:#fff;border:0;font-size:1.8rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;border:0;padding:.88rem 1.45rem;font-weight:900;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 11px 24px rgba(0,0,0,.18);transition:transform .18s,box-shadow .18s}.btn:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(0,0,0,.25)}.btn-red{background:var(--red);color:white}.btn-gold{background:var(--gold);color:var(--navy)}.btn-outline{border:2px solid rgba(255,255,255,.8);background:rgba(255,255,255,.08);color:#fff}.small-btn{padding:.75rem 1.25rem}.btn-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.label,.eyebrow{font-weight:900;text-transform:uppercase;letter-spacing:.18em;color:var(--green);font-size:.84rem}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.06;margin:.15rem 0 1rem}h1{font-size:clamp(3.3rem,6.8vw,6.2rem);color:#fff;text-shadow:0 8px 34px rgba(0,0,0,.42)}h1 span{color:var(--gold)}h2{font-size:clamp(2.45rem,5vw,4.35rem)}h3{font-size:1.55rem}.hero{position:relative;min-height:94vh;background:var(--navy);display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:url('assets/santa-hero.jpg');background-position:center right;background-size:cover;filter:saturate(1.06) contrast(1.02)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,48,.95) 0%,rgba(7,24,55,.78) 35%,rgba(7,24,55,.25) 68%,rgba(7,24,55,.04) 100%)}.hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.3rem;align-items:end;padding:7rem 0 4.4rem;transform:translateX(-28px)}.hero-copy{max-width:760px}.hero-pill{display:inline-flex;color:var(--gold);background:rgba(82,55,20,.42);border:1px solid rgba(246,202,84,.45);border-radius:999px;padding:.35rem .8rem;margin-bottom:1.2rem}.hero-lead{color:#f2f6ff;font-size:1.18rem;max-width:720px;text-shadow:0 2px 16px rgba(0,0,0,.55)}.hero-lead.secondary{font-size:1.05rem;color:#fff8ea}.christmas-countdown{align-self:end;margin-bottom:-.65rem;transform:translate(-42px,54px);background:linear-gradient(180deg,rgba(142,20,15,.95),rgba(75,17,30,.92));border:1px solid rgba(246,202,84,.55);border-radius:24px;padding:1.25rem;box-shadow:0 24px 70px rgba(0,0,0,.36);color:#fff;text-align:center}.christmas-countdown .eyebrow{font-family:'Playfair Display',Georgia,serif;color:var(--gold);font-size:1rem;letter-spacing:.13em}.count-copy{font-size:.96rem;margin:.55rem 0 1rem;color:#fff8ea}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem}.countdown div{background:#fff6df;border:1px solid rgba(255,231,151,.8);border-radius:14px;text-align:center;padding:.7rem .35rem;box-shadow:inset 0 0 20px rgba(246,202,84,.18)}.countdown strong{display:block;color:#8e140f;font-family:'Playfair Display',Georgia,serif;font-size:2rem;line-height:1}.countdown span{font-size:.64rem;text-transform:uppercase;font-weight:900;color:#3c1a18}.lore-strip{position:relative;z-index:3;background:#fffaf0;padding:1.2rem 0;box-shadow:0 10px 30px rgba(0,0,0,.05)}.lore-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.lore-inner p{margin:0;color:var(--muted)}.lore-inner strong{font-family:'Playfair Display',Georgia,serif;color:#a3140f;font-size:1.2rem}.section{position:relative;z-index:3;padding:5.4rem 0}.section-lead{max-width:820px;font-size:1.16rem;color:var(--muted)}.bell-section{background:radial-gradient(circle at 72% 38%,rgba(246,202,84,.20),transparent 38%),linear-gradient(180deg,#fff8ea,#fffdf8)}.legendary-bell-wrap{display:grid;grid-template-columns:.84fr 1.16fr;gap:2rem;align-items:center}.bell-copy-panel{background:linear-gradient(180deg,rgba(9,27,59,.96),rgba(5,11,24,.98));color:#fff;border-radius:34px;padding:2rem;box-shadow:var(--shadow);border:1px solid rgba(246,202,84,.25)}.bell-copy-panel .label{color:var(--gold)}.bell-copy-panel h2{color:#fff;font-size:clamp(2.2rem,4vw,3.8rem)}.bell-copy-panel p{color:#f3ead0}.magic-message{margin-top:1.4rem;border:1px solid rgba(246,202,84,.35);background:rgba(246,202,84,.10);border-radius:18px;padding:1rem;text-align:center}.magic-message span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--gold);font-weight:900}.magic-message strong{display:block;font-family:'Playfair Display',Georgia,serif;font-size:1.5rem;margin-top:.25rem}.legendary-bell-card{position:relative;border-radius:32px;box-shadow:0 28px 80px rgba(0,0,0,.35);overflow:hidden;background:#050505}.legendary-bell-btn{display:block;position:relative;width:100%;padding:0;border:0;background:#050505;cursor:pointer;line-height:0}.legendary-bell-btn img{width:100%;height:auto;display:block;transform-origin:51% 14%}.bell-hotspot{position:absolute;left:51%;bottom:5.5%;transform:translateX(-50%);background:linear-gradient(180deg,#d94333,#8e120d);color:#fff;border:2px solid rgba(255,226,135,.8);box-shadow:0 0 25px rgba(246,202,84,.55);border-radius:999px;padding:.7rem 2rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;line-height:1;white-space:nowrap}.ringing .bell-hotspot{animation:pulseRing .65s ease-in-out}.ringing img{animation:imageBellSwing 1.05s ease-in-out}@keyframes pulseRing{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.08)}}@keyframes imageBellSwing{0%,100%{transform:rotate(0deg);filter:brightness(1)}15%{transform:rotate(2.5deg);filter:brightness(1.2) saturate(1.14)}30%{transform:rotate(-2.1deg)}48%{transform:rotate(1.55deg)}66%{transform:rotate(-.9deg)}82%{transform:rotate(.35deg)}}.spark{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 18px var(--gold);animation:spark 1.1s ease-out forwards;z-index:20}@keyframes spark{from{transform:translate(-50%,-50%) scale(.35);opacity:1}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(.05);opacity:0}}.nice-list{background:#fffaf0}.split-grid{display:grid;grid-template-columns:1fr .95fr;gap:3rem;align-items:center}.section-copy p{font-size:1.12rem}.small-note{font-size:.95rem;color:var(--muted)}.feature-photo{width:100%;border-radius:28px;box-shadow:var(--shadow);border:8px solid #fff}.contain-photo{height:560px;object-fit:cover;object-position:center}.printables{background:linear-gradient(180deg,#fff8ea,#fffdf8)}.download-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.35rem;margin-top:2rem}.download-card{position:relative;background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);padding:1.1rem;min-height:430px;display:flex;flex-direction:column}.download-card img{height:260px;width:100%;object-fit:contain;border-radius:18px;background:#fffdf5}.download-card h3{margin-top:1rem}.download-card p{color:var(--muted);font-size:1rem}.download-card .btn{
    margin-top:auto;
    font-size:.9rem;
    letter-spacing:.02em;
}
}.ribbon{position:absolute;top:16px;right:-40px;transform:rotate(36deg);background:var(--gold);color:var(--navy);font-weight:900;text-transform:uppercase;padding:.3rem 2.8rem;font-size:.72rem}.coming-soon{background:linear-gradient(180deg,#fff8d8,#fff)}.soon-icon{height:230px;border-radius:18px;display:grid;place-items:center;font-size:3rem;background:linear-gradient(180deg,#fff8d2,#f6ca54)}.coming-pill{display:inline-flex;align-self:flex-start;background:#f5d982;color:#70420d;border-radius:999px;padding:.42rem .85rem;font-weight:900;margin-top:auto}.video-section{background:linear-gradient(180deg,var(--navy),#102d5f);color:white}.video-section .label{color:var(--green)}.video-section .section-lead{color:#e2ebff}.packages{display:grid;grid-template-columns:1fr 1.35fr;gap:1.3rem;margin-top:2rem}.package{background:#fff;color:var(--text);border-radius:var(--radius);padding:1.65rem;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.35);position:relative}.package.featured{grid-row:span 2}.wide-card h3 span{font-family:Lato,Arial,sans-serif;font-size:1.05rem}.price{font-family:'Playfair Display',Georgia,serif;font-size:4.2rem;line-height:1;color:var(--red);font-weight:900;margin:.3rem 0}.package ul{padding-left:0;list-style:none}.package li{margin:.45rem 0}.book-santa{background:#fff}.book-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}.book-main-photo{height:410px;object-fit:cover;object-position:center}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.45rem;margin-top:3rem}.gallery-card{background:#fff;border:8px solid #fff;border-radius:22px;box-shadow:0 18px 50px rgba(2,10,28,.16);height:255px;overflow:hidden}.gallery-card img{width:100%;height:100%;object-fit:contain;background:#fffaf0}.connect{background:linear-gradient(180deg,#102d5f,var(--navy));color:#fff;text-align:center}.connect .label{color:var(--gold)}.connect .section-lead{margin-inline:auto;color:#e6edff}.social-icons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.social-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-weight:900;font-size:1.35rem;color:#fff;box-shadow:0 12px 24px rgba(0,0,0,.22);transition:transform .18s,box-shadow .18s}.social-icon:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 18px 30px rgba(0,0,0,.28)}.social-icon svg{width:29px;height:29px;fill:currentColor}.facebook{background:#1877f2}.youtube{background:#ff0000}.instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}.pinterest{background:#bd081c}.etsy{background:#f1641e}.gumroad{background:#111;color:#fff}.social-note{color:#bfcbe4;font-size:.95rem}footer{background:#06142d;color:#dfe7f7;text-align:center;padding:2rem 0}footer a{color:var(--gold);text-decoration:none;font-weight:900}@media (max-width:980px){.menu-toggle{display:block}.links{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;background:rgba(8,24,54,.99);padding:1rem}.links.open{display:flex}.hero-grid{grid-template-columns:1fr;transform:none;padding-top:5rem}.christmas-countdown{max-width:460px;transform:none;margin-top:1rem}.legendary-bell-wrap,.split-grid,.book-grid{grid-template-columns:1fr}.download-grid,.gallery-grid{grid-template-columns:1fr 1fr}.packages{grid-template-columns:1fr}.package.featured{grid-row:auto}.bell-copy-panel{order:2}.legendary-bell-card{order:1}.bell-hotspot{font-size:.78rem;padding:.55rem 1rem}.contain-photo,.book-main-photo{height:auto}.hero h1{font-size:clamp(3rem,13vw,4.65rem)}}@media (max-width:620px){body{font-size:16px}.section{padding:3.8rem 0}.download-grid,.gallery-grid{grid-template-columns:1fr}.countdown{grid-template-columns:repeat(2,1fr)}.hero-lead{font-size:1.05rem}.lore-inner{display:block}.lore-inner .btn{margin-top:1rem}.gallery-card{height:auto}.gallery-card img{height:auto}.download-card{min-height:auto}}

.btn-green {
  background: #1f6b43;
  color: #ffffff;
  border: 2px solid #2e8b57;
}

.btn-green:hover {
  background: #2e8b57;
  transform: translateY(-2px);
}

/* Santa Jangle brighter holiday polish */
:root{
  --red:#B3263A;
  --deep-red:#8E1F2F;
  --green:#2E8B57;
}

.hero-shade{
  background:linear-gradient(90deg,rgba(40,12,22,.72) 0%,rgba(90,25,40,.42) 35%,rgba(255,255,255,0) 100%) !important;
}

.btn:hover{
  box-shadow:0 0 18px rgba(31,122,69,.35);
}

.countdown strong{
  color:var(--green) !important;
}

/* SUPPORT COCOA CARD */
.support-section {
  background: transparent;
  padding: 40px 20px 35px;
  text-align: center;
}

.support-card-wrap {
  width: min(92vw, 1180px);
  margin: 0 auto;
}

.support-image-link {
  display: block;
  text-decoration: none;
}

.support-cocoa-card {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 28px;
  box-shadow: 0 24px 55px rgba(0,0,0,.22);
}

.support-cocoa-card:hover {
  transform: translateY(-3px);
  transition: transform .25s ease;
}

.support-image-link {
  display: block;
  cursor: pointer;
}

.support-cocoa-card {
  transition: transform .25s ease, box-shadow .25s ease;
}

.support-image-link:hover .support-cocoa-card {
  transform: translateY(-4px) scale(1.01);
  box-shadow: 0 30px 70px rgba(0,0,0,.28);
}

.support-mini-btn {
  display: inline-block;
  padding: 10px 18px;
  margin: 0 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, #8b5a2b, #c98b4a);
  color: #fff7e6;
  text-decoration: none;
  font-weight: 700;
  font-size: 0.95rem;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
  transition: all .25s ease;
}

.support-mini-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,.32);
}

.footer-support-wrap {
  text-align: center;
  margin-top: 28px;
}

.footer-support-wrap {
  text-align: center;
  margin-top: 18px;
}

.support-mini-btn {
  display: inline-block;
  padding: 10px 22px;
  border-radius: 999px;
  background: linear-gradient(135deg, #8b5a2b, #c98b4a);
  color: #fff7e6;
  text-decoration: none;
  font-weight: 700;
  font-size: 0.95rem;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
  transition: all .25s ease;
}

.support-mini-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,.32);
}

/* MOBILE HERO BACKGROUND TUNE */
@media (max-width: 620px) {
  .hero-bg {
    background-position: 58% center !important;
    background-size: cover !important;
  }

  .welcome-hero {
    min-height: 92vh;
  }

  .hero-copy {
    padding-top: 2rem;
  }
}

/* MOBILE FOOTER COCOA BUTTON FIX */
@media (max-width: 620px) {
  .footer-support-wrap {
    text-align: center !important;
    margin-top: 18px !important;
  }

  .support-mini-btn {
    display: inline-block !important;
    padding: 10px 22px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #8b5a2b, #c98b4a) !important;
    color: #fff7e6 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.25) !important;
  }
}

/* MOBILE HERO BACKGROUND FIX */
@media (max-width: 620px) {
  .welcome-hero .hero-bg {
    background-position: 60% center !important;
    background-size: cover !important;
  }

  .welcome-hero {
    min-height: 92vh !important;
  }
}

/* MOBILE HERO FINE TUNE */
@media (max-width: 620px) {
  .welcome-hero {
    min-height: 82vh !important;
  }

  .hero-copy {
    padding-top: 1.2rem !important;
  }

  .hero h1 {
    font-size: clamp(3rem, 13vw, 4.1rem) !important;
    line-height: .95 !important;
    margin-bottom: 1rem !important;
  }

  .hero-lead,
  .hero-lead.secondary {
    font-size: 1.05rem !important;
    line-height: 1.45 !important;
    margin-bottom: 1rem !important;
  }

  .hero-pill {
    font-size: .82rem !important;
    letter-spacing: 2px !important;
    padding: .65rem 1rem !important;
  }

  .hero .btn {
    padding: .9rem 1.15rem !important;
    font-size: .95rem !important;
  }

  .btn-row {
    gap: .7rem !important;
  }
}

.reviews-badge {
  display: inline-block;
  margin: 0 auto 40px;
  padding: 12px 22px;
  border-radius: 999px;
  background: linear-gradient(135deg, #b88a44, #d4b06a);
  color: white;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(0,0,0,.15);
}

/* REVIEWS SECTION */
.reviews-section {
  padding: 55px 20px 70px;
  background:
    radial-gradient(circle at top left, rgba(255,255,255,0.25), transparent 35%),
    linear-gradient(180deg, #f6efe2 0%, #efe4cf 100%);
  text-align: center;
}

.reviews-section h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  margin-bottom: 18px;
}

.reviews-subtitle {
  max-width: 760px;
  margin: 0 auto 30px;
  font-size: 1.1rem;
  line-height: 1.6;
}

.reviews-badge {
  display: inline-block;
  margin: 0 auto 45px;
  padding: 12px 22px;
  border-radius: 999px;
  background: linear-gradient(135deg, #b88a44, #d4b06a);
  color: white;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(0,0,0,.15);
}

.review-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.review-card {
  background: linear-gradient(180deg, #fffaf0 0%, #f3e6c7 100%);
  border: 3px solid #d4b06a;
  border-radius: 22px;
  padding: 34px 28px;
  box-shadow: 0 12px 28px rgba(0,0,0,.15);
  position: relative;
}

.review-card::before {
  content: "Official Believer Testimonial";
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: #b88a44;
  color: white;
  font-size: 0.7rem;
  letter-spacing: 1px;
  padding: 5px 12px;
  border-radius: 999px;
  white-space: nowrap;
}

.review-stars {
  font-size: 1.4rem;
  margin-bottom: 18px;
}

.review-card p {
  font-size: 1.05rem;
  line-height: 1.7;
  font-style: italic;
  margin-bottom: 18px;
}

.review-card span {
  font-weight: 700;
}

@media (max-width: 900px) {
  .review-grid {
    grid-template-columns: 1fr;
  }
}

/* REVIEWS POLISH */
.reviews-section h2 {
  text-align: center !important;
  font-size: clamp(2rem, 4.5vw, 3.3rem) !important;
  max-width: 1100px;
  margin: 0 auto 20px !important;
}

.reviews-badge {
  display: block !important;
  width: fit-content;
  margin: 18px auto 45px !important;
}

.review-card {
  min-height: 240px;
}

.reviews-section h2 {
  max-width: 1100px;
  margin: 0 auto 18px;
  text-align: center !important;
}

/* FINAL REVIEWS TITLE CENTER FIX */
.reviews-section h2 {
  display: block !important;
  width: 100% !important;
  max-width: 1100px !important;
  margin: 0 auto 18px !important;
  text-align: center !important;
  font-size: clamp(2rem, 4vw, 3rem) !important;
}

/* FINAL FINAL REVIEWS HEADER FIX */
.reviews-section {
  overflow: hidden;
}

.reviews-section h2 {
  max-width: 900px !important;
  margin: 0 auto 18px !important;
  padding: 0 20px !important;
  text-align: center !important;
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  line-height: 1.08 !important;
}

/* REVIEWS TITLE TRUE CENTER */
.reviews-section h2 {
  max-width: 1000px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  font-size: clamp(2.6rem, 5vw, 4rem) !important;
  line-height: 1.1 !important;
}