/* ===== Padiham homepage polish ===== */
html{scroll-behavior:smooth;}
/* card hover lift (bundle, collection, product, why-choose, testimonial cards) */
.pad-bundle-slide,.elementor-widget-image img{transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s ease;}
.pad-bundle-slide:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(21,23,27,.14)!important;}
/* buttons: smooth hover */
.elementor-button,.elementor-button-link{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,filter .2s ease!important;}
.elementor-button:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 8px 20px rgba(226,100,31,.28);}
/* image zoom inside cards */
.pad-bundle-slide .elementor-widget-image{overflow:hidden;border-radius:12px 12px 0 0;}
.pad-bundle-slide:hover .elementor-widget-image img{transform:scale(1.06);}

/* ===== Bundle slider ===== */
.pad-bundle-slider{position:relative;}
.pad-bundle-track{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:18px!important;padding:6px 4px 16px!important;-ms-overflow-style:none;scrollbar-width:none;cursor:grab;}
.pad-bundle-track::-webkit-scrollbar{display:none;}
.pad-bundle-track.pad-dragging{cursor:grabbing;scroll-snap-type:none;}
.pad-bundle-track > .e-con,.pad-bundle-track > .elementor-element{scroll-snap-align:start;flex:0 0 auto!important;}
.pad-bundle-slide{width:300px!important;max-width:80vw;}
@media(min-width:1025px){.pad-bundle-slide{width:calc((100% - 54px)/4)!important;min-width:260px;}}
@media(max-width:1024px){.pad-bundle-slide{width:300px!important;}}
@media(max-width:600px){.pad-bundle-slide{width:82vw!important;}}
/* arrows */
.pad-bundle-nav{position:absolute;top:46%;width:46px;height:46px;border-radius:50%;background:#15171b;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .2s ease,background .2s ease;font-size:18px;line-height:1;}
.pad-bundle-nav:hover{background:#e2641f;transform:scale(1.08);}
.pad-bundle-nav.pad-prev{left:-8px;}
.pad-bundle-nav.pad-next{right:-8px;}
.pad-bundle-nav[disabled]{opacity:.3;cursor:default;pointer-events:none;}
@media(max-width:768px){.pad-bundle-nav{display:none;}}
/* dots */
.pad-bundle-dots{display:flex;justify-content:center;gap:8px;margin-top:14px;}
.pad-bundle-dots button{width:9px;height:9px;border-radius:50%;border:none;background:#d4d7dc;cursor:pointer;padding:0;transition:all .25s ease;}
.pad-bundle-dots button.is-active{background:#e2641f;width:26px;border-radius:6px;}

/* ===== reveal on scroll ===== */
.pad-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1);}
.pad-reveal.pad-in{opacity:1;transform:none;}
/* boxed container: the flex children live in .e-con-inner */
.pad-bundle-track > .e-con-inner{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:18px!important;padding:6px 4px 16px!important;-ms-overflow-style:none;scrollbar-width:none;cursor:grab;width:100%;}
.pad-bundle-track > .e-con-inner::-webkit-scrollbar{display:none;}
.pad-bundle-track{overflow:visible!important;}
.pad-bundle-track > .e-con-inner > .e-con,.pad-bundle-track > .e-con-inner > .elementor-element{scroll-snap-align:start;flex:0 0 auto!important;}


/* ===== EDITOR FIX: force reveal elements visible inside Elementor editor ===== */
/* In the editor the scroll-JS never fires, so pad-reveal stays opacity:0. */
/* These rules ONLY apply inside the editor, live animation is untouched. */
.elementor-editor-active .pad-reveal,
.elementor-editor-preview .pad-reveal {
  opacity: 1 !important;
  transform: none !important;
}
