/* ===========================================================
   Choco Pop v2 — Footer
   Template: templates/includes/footer.html
   Behaviour: js/choco-motion.js (initPools, initFlySubmit, initRocket)
   =========================================================== */

.cp-footer{
  --cp-ft-top:#3A1F14;
  position:relative;margin-top:58px;color:#E8D6C4;
  background:
    radial-gradient(ellipse at 85% 40%, rgba(237,155,51,.1), transparent 45%),
    radial-gradient(ellipse at 10% 60%, rgba(166,25,46,.16), transparent 50%),
    linear-gradient(180deg,var(--cp-ft-top) 0%,#2c170e 55%,var(--clay-cocoa-deep) 100%);
}

/* ---------- liquid surface above the footer ---------- */
.cp-pool{position:absolute;left:0;right:0;bottom:calc(100% - 2px);height:52px;pointer-events:none;overflow:hidden;}
.cp-pool svg{display:block;position:absolute;left:0;bottom:0;overflow:visible;}
.cp-pool__layer{animation:cpPoolFlow var(--dur,14s) linear infinite;}
@keyframes cpPoolFlow{from{transform:translateX(0);}to{transform:translateX(var(--p,-240px));}}

/* ---------- floating candies in the background ---------- */
.cp-footer__deco{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
.cp-footer__deco img{
  position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);object-fit:contain;
  opacity:.1;filter:saturate(.7);animation:cpFooterDrift var(--t,8s) ease-in-out infinite;animation-delay:var(--d,0s);
}
@keyframes cpFooterDrift{0%,100%{transform:translate(0,0) rotate(-6deg);}50%{transform:translate(10px,-16px) rotate(8deg);}}

/* ---------- top: brand + newsletter ---------- */
.cp-footer__top{display:grid;grid-template-columns:1fr 1.15fr;gap:28px;align-items:center;padding:18px 0 34px;border-bottom:1px dashed rgba(246,200,122,.18);}
.cp-footer__name{display:flex;align-items:center;gap:10px;font-size:1.35rem;font-weight:900;color:var(--clay-cream);}
.cp-footer__name img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(0,0,0,.35));animation:cpFloat 4s ease-in-out infinite;}
.cp-footer__about{margin-top:10px;max-width:420px;font-size:.8rem;line-height:2;color:#CDB7A6;}
.cp-footer__social{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;}
.cp-footer__social .clay-icon-btn{width:44px;height:44px;transition:transform var(--cp-mid) var(--cp-ease-jelly), translate .25s ease-out;}
.cp-footer__social .clay-icon-btn:hover{transform:translateY(-4px) rotate(-8deg) scale(1.08);}

.cp-news{
  position:relative;display:grid;grid-template-columns:auto 1fr;gap:6px 16px;align-items:center;
  padding:22px 22px 20px;border-radius:30px;color:var(--clay-cocoa-dark);
  background:radial-gradient(ellipse at 20% 10%, #fff, #FFF3E2 50%, var(--clay-cream) 100%);
  box-shadow:0 8px 0 rgba(0,0,0,.28), 0 20px 34px rgba(0,0,0,.3), inset 0 3px 0 rgba(255,255,255,.9), inset 0 -5px 10px rgba(204,90,0,.1);
}
.cp-news__icon{
  grid-row:span 2;width:64px;height:64px;border-radius:22px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,var(--clay-wine),var(--clay-wine-dark));box-shadow:0 5px 0 var(--clay-wine-deep), inset 0 2px 0 rgba(255,255,255,.25);
  transform:rotate(-6deg);animation:cpNewsBob 3.2s ease-in-out infinite;
}
.cp-news__icon img{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(0,0,0,.3));}
@keyframes cpNewsBob{0%,100%{transform:rotate(-6deg) translateY(0);}50%{transform:rotate(4deg) translateY(-5px);}}
.cp-news__title{font-size:1rem;font-weight:900;color:var(--clay-cocoa-dark);}
.cp-news__sub{font-size:.74rem;color:var(--clay-cocoa-light);line-height:1.8;}
.cp-news__form{
  grid-column:1 / -1;margin-top:10px;display:flex;align-items:center;gap:6px;padding:5px;border-radius:999px;
  background:#fff;border:2px solid rgba(246,200,122,.6);box-shadow:inset 0 2px 5px rgba(79,44,29,.06);
  transition:border-color var(--cp-fast) ease, box-shadow var(--cp-mid) ease, transform var(--cp-mid) var(--cp-ease-jelly);
}
.cp-news__form:focus-within{border-color:var(--clay-gold);box-shadow:0 0 0 5px rgba(237,155,51,.18);transform:scale(1.01);}
.cp-news__form input{flex:1;min-width:0;height:42px;padding:0 14px;border:0;background:transparent;font-size:.85rem;color:var(--clay-cocoa-dark);outline:none;}
.cp-news__form input::placeholder{color:var(--clay-cocoa-pale);}
.cp-news__form .clay-cta{padding:10px 18px;font-size:.8rem;box-shadow:0 4px 0 #a04700, inset 0 1px 0 rgba(255,255,255,.3);}
.cp-news__form .clay-cta img{width:18px;height:18px;object-fit:contain;filter:brightness(0) invert(1);transition:transform .45s var(--cp-ease-jelly);}
.cp-news__form .clay-cta:hover img{transform:translate(-3px,-3px) rotate(-12deg);}
.cp-news__form.is-sent{animation:cpNewsSent .7s var(--cp-ease-jelly);}
.cp-news__form.is-invalid{animation:cpShakeX .45s ease;}
@keyframes cpNewsSent{30%{transform:scale(.97,1.04);}60%{transform:scale(1.02,.98);}}
@keyframes cpShakeX{20%{transform:translateX(-8px);}40%{transform:translateX(7px);}60%{transform:translateX(-5px);}80%{transform:translateX(3px);}}

/* ---------- columns ---------- */
.cp-footer__grid{display:grid;grid-template-columns:1fr 1fr 1.6fr auto;gap:28px;padding:32px 0 36px;}
.cp-footer__h{position:relative;margin-bottom:16px;padding-bottom:10px;font-size:.95rem;font-weight:900;color:var(--clay-gold);}
.cp-footer__h::after{
  content:"";position:absolute;right:0;bottom:0;height:5px;width:42px;border-radius:5px;
  background:repeating-linear-gradient(-45deg,var(--clay-wine) 0 6px,var(--clay-gold) 6px 12px);
  transform-origin:right center;transform:scaleX(0);transition:transform .7s var(--cp-ease-jelly) .25s;
}
.cp-footer__col.is-in .cp-footer__h::after,html:not(.cp-js) .cp-footer__h::after{transform:scaleX(1);}
.cp-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.cp-flink{
  position:relative;display:inline-flex;align-items:center;gap:0;font-size:.82rem;color:#E8D6C4;
  transition:color var(--cp-fast) ease, transform var(--cp-mid) var(--cp-ease-jelly), gap var(--cp-mid) var(--cp-ease-jelly);
}
.cp-flink::before{
  content:"";width:8px;height:8px;border-radius:50%;flex-shrink:0;
  background:radial-gradient(circle at 35% 30%, #fff3df, var(--clay-gold) 60%, var(--clay-gold-deep));
  transform:scale(0);margin-inline-end:0;transition:transform var(--cp-mid) var(--cp-ease-jelly), margin var(--cp-mid) var(--cp-ease-jelly);
}
.cp-flink:hover,.cp-flink:focus-visible{color:var(--clay-cream-gold);transform:translateX(-4px);outline:none;}
.cp-flink:hover::before,.cp-flink:focus-visible::before{transform:scale(1);margin-inline-end:8px;}

.cp-contact{display:flex;flex-direction:column;gap:10px;}
.cp-contact__row{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:.8rem;line-height:1.9;color:#E8D6C4;word-break:break-word;}
.cp-contact__row strong{color:var(--clay-cream);font-weight:800;}
.cp-contact__row a{color:inherit;transition:color var(--cp-fast);}
.cp-contact__row a:hover{color:var(--clay-cream-gold);}
.cp-contact__row--muted{color:#BFA391;font-size:.74rem;}
.cp-contact__ic{
  width:30px;height:30px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 32% 28%, #fff, var(--clay-cream) 80%);box-shadow:0 3px 0 rgba(0,0,0,.3), inset 0 1px 0 #fff;
  transition:transform .45s var(--cp-ease-jelly);
}
.cp-contact__ic img{width:18px;height:18px;object-fit:contain;}
.cp-contact__row:hover .cp-contact__ic{transform:rotate(-12deg) scale(1.1);}
.cp-trust{
  padding:10px;border-radius:24px;background:radial-gradient(circle at 30% 20%, #fff, var(--clay-cream));
  box-shadow:0 6px 0 rgba(0,0,0,.28), inset 0 2px 0 #fff;transition:transform .45s var(--cp-ease-jelly);
}
.cp-trust:hover{transform:translateY(-4px) rotate(-2deg);}

/* ---------- bottom bar ---------- */
.cp-footer__bottom{position:relative;border-top:1px solid rgba(125,90,71,.3);background:rgba(20,9,4,.45);}
.cp-footer__bottom-in{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;padding-bottom:12px;}
.cp-footer__bottom p{margin:0;font-size:.74rem;color:#BFA391;}
.cp-footer__heart{display:inline-block;color:var(--clay-wine);animation:cpHeartBeat 1.4s ease-in-out infinite;}
@keyframes cpHeartBeat{0%,40%,100%{transform:scale(1);}15%{transform:scale(1.35);}28%{transform:scale(1.1);}}

.cp-rocket{width:46px;height:46px;flex-shrink:0;margin-top:-34px;}
.cp-rocket img{width:24px;height:24px;object-fit:contain;transition:transform .4s var(--cp-ease-jelly);}
.cp-rocket:hover img{transform:translateY(-4px);}
.cp-rocket.is-launch{animation:cpRocket 1.1s var(--cp-ease-in) both;}
@keyframes cpRocket{
  0%{transform:none;}
  18%{transform:translateY(6px) scale(1.1,.86);}
  55%{transform:translateY(-140px) scale(.9,1.12) rotate(-6deg);opacity:1;}
  56%{opacity:0;transform:translateY(-150px);}
  57%{opacity:0;transform:translateY(30px) scale(.6);}
  100%{opacity:1;transform:none;}
}

/* ---------- responsive ---------- */
@media (max-width:1023.98px){
  .cp-footer__top{grid-template-columns:1fr;}
  .cp-footer__grid{grid-template-columns:1fr 1fr;}
  .cp-footer__col--wide,.cp-footer__col--trust{grid-column:1 / -1;}
  .cp-footer__col--trust{display:flex;justify-content:center;}
}
@media (max-width:640px){
  .cp-footer{margin-top:46px;}
  .cp-footer__top{gap:22px;padding-bottom:26px;text-align:center;}
  .cp-footer__name,.cp-footer__social{justify-content:center;}
  .cp-footer__about{margin-inline:auto;}
  .cp-news{padding:18px 16px;text-align:right;}
  .cp-news__icon{width:54px;height:54px;border-radius:18px;}
  .cp-footer__grid{gap:22px 14px;padding:24px 0 28px;}
  .cp-footer__bottom-in{flex-wrap:wrap;justify-content:center;text-align:center;}
  .cp-footer__love{display:none;}
  .cp-rocket{position:absolute;left:16px;top:0;}
}

@media (prefers-reduced-motion: reduce){
  .cp-pool__layer,.cp-footer__deco img,.cp-footer__name img,.cp-news__icon,.cp-footer__heart,.cp-rocket.is-launch,
  .cp-news__form.is-sent,.cp-news__form.is-invalid{animation:none !important;}
  .cp-footer__h::after{transform:scaleX(1);transition:none;}
}
